2012-03-14 62 views
-2

我在窗体中有两个输入文本字段。两个输入都绑定在一个范围内。模糊事件功能不能正常工作

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

+0

你能显示一些代码吗?这将帮助我们解决您的问题。 – 2012-03-14 08:16:06

+0

请显示您的代码... – viyancs 2012-03-14 08:16:32

+0

您是否希望在两个输入上都引发模糊事件? – 2012-03-14 08:17:05

回答

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

4

您的代码可能看起来是这样的:

$('input').blur(function(){ 
     $('input').hide(); 
    }); 

当你需要这个:

$('input').blur(function(){ 
     $(this).hide(); 
    }); 

不要选择模糊回调里面所有的文本框,隐藏只有在失去焦点的一个(使用this)。

+0

对,抱歉那种遗忘的遗憾:D – 2012-03-14 08:26:28

+0

@EvilP。 _“模糊事件在元素失去焦点时引发”_ – gdoron 2012-03-14 08:27:18