jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jQuery模糊并提交传播问题大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个简单的新用户表单,其中包含一个显示名称”输入字段,用于触发对blur()事件的ajax调用.这样可以验证输入的值是否已存在于DB中.

例:

$("#displayname").blur(function() {
    //do something
 })

一旦显示名称,用户单击“提交”按钮继续进行,这是表单中的下一个立即操作.

例:

$("#button").click(function() {
   $("#form").trigger("submit");
})

但是,blur()事件始终首先触发,并且未注册按钮单击.只有在第二次单击按钮时,传播才会正确.这导致我的形式出现混乱.

有没有办法让我在单击按钮时抑制文本框的blur()事件?

谢谢你的帮助
干杯!

解决方法

如果我正确理解你,问题的情况是模糊是由按钮点击引起的.

幸运的是,事件信息被传递给处理程序,事件应该包含目标属性.由此,您可以推断出是否对模糊做了些什么.使用您喜欢的js调试器在blur事件处理程序中停止并查看目标属性上的内容.

$("#displayname").blur(function(evt) {
   if (evt.target is not the button){ // figure this out with debugger
      //do something 

       return true; // I handled it
   }
   return false; // I didn't handle it
 })

但是,在这种情况下,您不会动态检查字段中的内容是否在数据库中.

@eZakto在禁用提交按钮时有一个很好的建议,直到输入的ajax检查完成.

大佬总结

以上是大佬教程为你收集整理的jQuery模糊并提交传播问题全部内容,希望文章能够帮你解决jQuery模糊并提交传播问题所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。