代码如下
$("#username").blur(function(){ alert("ass");//鼠标点击Blur 按tab键在第一次的时候没有触发 $.getJSON("send.php?action=get_&n="+Math.random(),function(data) { if (data.res!=="none"){ setTimeout("$('#gb_tip_layer').hide('100');",5000); } }); }); <input name="username" type="text" class="text-input" id="username"/>
我想实现的效果就是当 username 这个文本框blur的时候触发一个请求查询。可问题是,无论是鼠标点击了页面其他地方还是按TAB键到下个表单项,blur事件绑定的函数都不会被触发。只有再次点击的时候才会触发blur,请问这是怎么个情况啊?该如何解决呢? 谢谢了!
blur是事情焦点触发的,只要光标冲username文本域离开就触发
blur事件触发首先需要焦点在这个控件上,当这个控件失去焦点时才会触发,不知道楼主如何理解这个事件的?
你先把
$.getJSON("send.php?action=get_&n="+Math.random(),function(data) { if (data.res!=="none"){ setTimeout("$('#gb_tip_layer').hide('100');",5000); } });
这一段去掉试一下看功能正常不
我想要的就是当输入完 username中的数值,焦点移到下一个文本框时候 触发一个函数检测 username中的数据是否存在。。。
郁闷的是,第一次 blur 没有触发绑定的函数,当第二次blur的时候才有效果.....
$("document").ready(function validate(){ }
代码放在ready里就可以了
忘了说明了,$("#username") 是放在div弹层里的,用$("document").ready(function validate(){ }
就找不着了。。
以上是jquery blur不触发的问题解决办法分享的详细内容。更多信息请关注PHP中文网其他相关文章!