我有以下情形:jQuery:如何停止从blur()处理程序触发change()事件?
$("#element").blur(validate).change(onElementChange);
的验证()函数应防止更改事件烧制而成,如果#element的值无效。 我无法添加要更改的验证,因为它也需要验证模糊。 如果将validate()添加到两个事件中,则带有验证错误的警报将弹出两次。
所以,我的问题是,我可以停止从模糊事件处理程序发射的更改事件吗?
此外,如果你有不同的解决方案(不使用插件),我想听听它。
感谢
后处理验证怎么只使用'blur'处理程序,并从'validate'内部以编程方式调用'onElementChange'?这将允许你的模糊处理器像你所描述的那样控制'onElementChange'的执行。 – 2010-02-19 10:04:43
您对验证错误有警报?用户不会那么喜欢,警报有点太侵扰。 – 2010-02-19 10:08:28
@Jimmy Cuadra:是的,这可以解决双重调用的问题,但不幸的是,onElementChange会做一些更新,只有在数据被修改时才会进行更新。 @Ed伍德科克:我是知道的,但这个应用程序是仅供内部使用,所以:-) – egyedg 2010-02-19 11:55:18