2017-03-27 35 views
0

我試圖模擬在網頁加載時輸入的輸入按鍵,但它似乎並不奏效。當我點擊輸入並按下回車鍵時,我只能找到成功。我希望在頁面加載時看到警報。jQuery的按鍵事件觸發沒有工作在頁面加載

如果你改變我在下面列出的順序,那麼它提供了一個警報,但按下的鍵是不確定的。

任何想法,我要去的地方錯在這裏?

在這裏看到的演示 - http://jsfiddle.net/3xTM2/1321/

HTML

<input id="test" type="text" /> 

的Javascript

$('#test').trigger(jQuery.Event('keypress', { keycode: 13 }));  
$('#test').keypress(function(e) { 
    alert(e.keyCode); 
}); 
+0

這是一個重複的問題...看到這個答案:HTTP://計算器.com/a/832121/2159528 –

+1

在定義它之前,您正在觸發事件。只需改變順序。 – Ibu

+1

[使用jQuery觸發按鍵事件的最終方法]的可能重複(http://stackoverflow.com/questions/832059/definitive-way-to-trigger-keypress-events-with-jquery) –

回答

1

如評論中所述,只需更改訂單並將keycode更改爲keyCode,如下所示。

:請注意Code代替小寫大寫在code

$('#test').keypress(function(e) { 
 
    alert(e.keyCode); 
 
}); 
 

 

 

 
$('#test').trigger(jQuery.Event('keypress', { keyCode: 13 }));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input id="test" type="text" />

0

你要顛倒順序,以及數據分配給您的jQuery版本的事件對象:

$('#test').keypress(function(e) { 
    alert(e.keyCode); 
}); 

var event = jQuery.Event('keypress'); 
event.keyCode = 13; 
$('#test').trigger(event); 
相關問題