【发布时间】:2014-04-06 12:06:08
【问题描述】:
我有一个带有输入标签和“X”按钮的表单来清理输入值。 当输入没有焦点时,这个按钮应该被隐藏,所以当输入没有焦点时,我有一个 focusout 事件来隐藏它。但是当用户点击“X”按钮时 - 它首先进入 focusout 事件并且不会调用该按钮的点击事件。
这是我的html:
<input type="text" id="entityName" data-bind="value: name" maxlength="100" name="name" />
<span class="clearTextIcon" data-bind="click:$root.clearText"></span>
这是我的代码
this.clearText = function (o, e){
$(e.target).prev().val('');
};
$('body').on('focusout', 'input', function(e){
$(this).siblings('.clearTextIcon').hide();
});
【问题讨论】:
-
这只是一个错字吧?!
$(this);.siblings -
是的,谢谢。应该是 $(this).siblings('.capbClearTextIcon').hide();
标签: jquery knockout.js