模糊事件的功能无法正常工作

时间:2012-03-14 08:13:50

标签: javascript jquery

我在表单中有两个输入文本字段。两个输入都在一个范围内绑定。

我在两个输入字段的onblur事件上调用一个函数,这使得两个输入都消失了 当我在第一个文本字段中输入值然后单击第二个文本字段时,两个输入字段都会消失 我知道我在“onblur”事件上调用了该函数,但我希望用户至少点击第二个输入字段。

2 个答案:

答案 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();这只会隐藏失去焦点的实际输入字段。