jQuery blur()方法會執行2次onblur方法

今天在處理html頁面時遇到一個問題,表單提交前想通過jQuery.blur()來驗證表單數據的填寫的規範性。
可是jQuery.blur()執行時每次都被執行2次,下面是簡單的測試驗證代碼。

<html>
<head>
<script  src="http://libs.baidu.com/jquery/1.8.0/jquery.min.js"></script>
</head>
<body>
<input id="usr_pw" onblur="console.log('configPw');"/>
</body>
</html>

在firefox或者IE的控制器中執行腳本jQuery(‘#usr_pw’).blur(),會輸出2次configPw信息。
查明後發現是jquery的版本bug…^ ^

jQuery 1.7或者1.8的版本都有這個bug,1.6的沒問題,其他版本沒有詳細測試了。
修改使用如下的jquery版本(1.6.4),執行後就沒有問題,只調用1次。

<html>
<head>
<script  src="http://libs.baidu.com/jquery/1.6.4/jquery.min.js"></script>
</head>
<body>
<input id="usr_pw" onblur="console.log('configPw');"/>
</body>
</html>

最後在jquery官方上找到了依據,記載下來。
http://forum.jquery.com/topic/onblur-event-triggered-twice

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章