我有以下情形: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