我想在輸入[type = text]的更改中執行一個函數,在除IE之外的所有瀏覽器中都可以正常工作。在按下Enter按鈕時,IE中的事件更改無法正常工作
這是個例:
$('input.switch').change(function(){
alert('ok now');
});
文本輸入看上去像:
<input class="switch" type="text" value="50000" />
不要忘了,我有不同類別的很多投入!
您有解決方案嗎?
我想在輸入[type = text]的更改中執行一個函數,在除IE之外的所有瀏覽器中都可以正常工作。在按下Enter按鈕時,IE中的事件更改無法正常工作
這是個例:
$('input.switch').change(function(){
alert('ok now');
});
文本輸入看上去像:
<input class="switch" type="text" value="50000" />
不要忘了,我有不同類別的很多投入!
您有解決方案嗎?
如果要激活一個事件按下時,輸入然後註冊此事件:
$('input.switch:first').keydown(function(e){
if (e.keyCode==13) { //Enter keycode
//Do you stuff
}
});
輸入,因爲文字輸入不失去焦點不激活的變化可能。
祝你好運!
更新: 最新版本的jQuery允許您使用以下代碼獲取焦點元素:$('*:focus')
。我相信你應該添加腳本來支持IE。對於每一個的keydown,如果該鍵輸入,讓聚焦輸入,模糊並觸發變化:
$('body').keydown(function() {
if (e.keyCode==13) { //Enter keycode
$('input:focus').blur().change(); //The blur is to prevent change happen again
}
});
我不知道,你可以迫使IE瀏覽器來觸發改變不同的方式按下回車時。
希望這次有所幫助。
在IE中會發生什麼?任何錯誤?你有沒有試過'if($(this).prop('checked'))'? – 2012-07-10 14:11:29
在IE中,事件在輸入失去焦點時執行! :\ – kach 2012-07-10 14:24:00
對於所有瀏覽器中的文本輸入,情況就是這樣......您的代碼似乎並未涉及文本輸入。 – 2012-07-10 15:26:06