我在表单中有两个输入文本字段。两个输入都在一个范围内绑定。
我在两个输入字段的onblur
事件上调用一个函数,这使得两个输入都消失了
当我在第一个文本字段中输入值然后单击第二个文本字段时,两个输入字段都会消失
我知道我在“onblur”事件上调用了该函数,但我希望用户至少点击第二个输入字段。
答案 0 :(得分:4)
您的代码可能如下所示:
$('input').blur(function(){
$('input').hide();
});
虽然你需要这个:
$('input').blur(function(){
$(this).hide();
});
不要选择模糊回调中的所有文本框,只隐藏失去焦点的文本框(使用this
)。
答案 1 :(得分:0)
恢复你的两个输入字段都是模糊的,你没有使用ID 您可以同时提供两个输入字段ID
<input id="firstInput" type="text"/>
<input id="secondInput" type="text"/>
并单独模糊它们:
$('#firstInput').on("click",function(){
$(this).hide();
};
$('#secondInput').on("click",function(){
$(this).hide();
};
注意: .on()
仅适用于jQuery 1.7+。如果您使用的是较低版本,请使用.bind()
或.click()
编辑:正如gdoron在他的代码中已经提到的那样。您可能正在使用input
定位每个 $('input')
.hide()
字段,但您应该使用$(this).hide();
这只会隐藏失去焦点的实际输入字段。