2013-02-06 70 views
0

定期<input type='reset'>復位形式重啓完成事件到其初始狀態的document.ready,但儘管改值沒有調用的<select>的變化()事件。jQuery的復位按鈕

我想通過直接調用$('select').change()來強制更改事件,但我需要在重置完成後調用它,重置按鈕的complete()事件是什麼,我應該聽?按鈕上是否有「重置完成」事件?

一名2歲後jQuery的論壇,建議使用超時功能延遲.change()。現在有沒有新的做事方式?

回答

2

我可以讀這錯了,但你在找類似的東西:

$(document).on("click", "input[type='reset']", function(){ 
    $("select").trigger("change"); 
}); 

所以每當用戶click S中reset按鈕,你trigger一個change任何select的活動中。

編輯:

獲取從click事件的請求,並阻止默認行爲,重置表單,然後觸發的變化:

$(document).on("click", "input[type='reset']", function(e){ 
    e.preventDefault(); 
    form = e.toElement.form; 
    form.reset(); 
    $("select",form).trigger("change"); 
}); 

EXAMPLE

+0

我會假設此時調用此事件處理程序,則值尚未重置。但我不知道。這只是一些評估。 –

+0

菲利克斯是對的。我需要在復位後觸發更改。 – Jake

+0

是啊,我剛剛創建了一個小提琴例子在這裏進行測試:http://jsfiddle.net/ChaseWest/JEeWw/1/這其實是正確的。 – Chase