1
我的代碼依賴onBlur來驗證用戶標識,但是如果用戶只是鍵入用戶,然後直接點擊提交按鈕,onBlur事件不會觸發。OnClick事件正在繞過onurl事件
<td><input type='text' name="USERID" onBlur="doValidateUserID(this)"></td>
<td><input type="button" name="assetSaveButton" value="Save" onClick="doSomeStuff(this)"></td>
下面是僞Ajax調用
function doValidateUserID(userID) {
// ajax call goes here
}
我的問題是doValidateUserID甚至沒有被在價值用戶類型後打來電話,點擊提交按鈕。我試着用onChange代替onBlur,但徒勞無益。
編輯:顯然,添加警報已經改變了事件的行爲,現在點擊保存按鈕,doValidateUserID被調用,但doSomeStuff被完全跳過。我必須再次點擊呼叫doSomeStuff
那麼,您需要將您的代碼流更改爲'assetsSaveButton.on('click',function ...)',使用'ep reventDefault()'並在該位置驗證,然後手動提交。 – Davion 2015-03-02 11:15:24
我無法重現該問題:http://jsbin.com/fewatutuve/1/edit?html,output – Quentin 2015-03-02 11:16:08
我在代碼中添加了警報,並嘗試再次運行它,將很快發佈結果。 – 2015-03-02 11:32:43