簡體   English   中英

輸入時未觸發jQuery鍵按下事件

[英]Jquery key press event not triggered on enter

$("#username,#password").keypress(function(e)
    {
        //alert('');
        if(e.keyCode == 13)
        {
            signIn();
        }
    });

如果按下回車鍵,則按鍵事件不會調用。

嘗試使用keyUp事件。

現場演示

$("#username,#password").keyup(function(e){
        //alert('');
        if(e.keyCode == 13)
        {
            signIn();
        }
});

這也適用於按鍵

現場演示

$("#txt1").keypress(function(e) {

    if (e.keyCode == 13) {
        //signIn();
        alert("keypress");
    }
});​

按下鍵更合適:

$("#username,#password").keydown(function(e){
        if(e.keyCode == 13)
        {
            signIn();
        }
});    
  1. 使用e.which代替e.keyCode ,因為這是jQuery的保證是事件
  2. 嘗試使用e.preventDefault() ,因為如果沒有它(如果它們在表單中),則該表單將提交
  3. 也許最好的辦法是監聽表單的submit事件

您確定它不是signIn (); 功能有問題嗎? 因為這似乎很好用; http://jsfiddle.net/vDkBs/1/

使用按鍵和以下語句:

$("#username,#password").keypress(function(e) {
    if (e.which == 13) {
        //call here your function
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM