2011-06-07 110 views
0

我需要趕上未保存的變化。我遇到了這個問題:如果只輸入一行,並且沒有其他事件,例如選項卡或鼠標點擊,則onchange不適用於瀏覽器導航。情景1:輸入一個數字,然後使用瀏覽器按鈕。如果是選擇框,則方案2:通過鍵盤導航(上/下箭頭)選擇一個項目,然後使用瀏覽器按鈕。這是行不通的。onchange選擇按鈕

我jQuery代碼是,

$(':input', document.frmName).live("change", function(e) { alert ('Modified'); }); 

誰能告訴我怎麼解決這個問題? 謝謝

回答

0

change事件在焦點離開控件之前不會觸發,正如您觀察到的,您的情況可能已經太晚了。

,當你真的需要預先通知,就是用各種事件  —​​,keypress的組合通常的做法,click   —與輪詢定時器(來處理其中沒有事件引發可靠地跨瀏覽器的東西結合起來,就像右鍵單擊,然後從上下文菜單中粘貼)。