2009-12-04 21 views
6

キーを<input>フィールドに入力するか、代わりにを入力してください。キーを押してください。私はまだ最高のものを決めていない。jQueryでEnterキーを送信しないようにするにはどうすればよいですか?

jQueryでこれを行うにはどうすればよいですか?私はこれまでのところ、これを持っている:

$(document).ready(function(){ 
    ... 
    //handle enter key 
    $("input").keypress(function (e) { 
     var k = e.keyCode || e.which; 
     if (k == 13) { 
      //??? 
     } 
    }); 
}); 

を(e.keyCode || e.which部分がthis questionで推奨されたこと。)

をI(b)は強制的に(a)のイベントをキャンセルするか、他のいずれかにそこに何を置くかもしれませんTabキーを押す?

答えて

14

e.preventDefault()を使用すると、デフォルトのアクション(この場合はフォームのサブミット)を防ぐことができます。

7

またはreturn false;

$(document).ready(function(){ 
    ... 
    //handle enter key 
    $("input").keypress(function (e) { 
     var k = e.keyCode || e.which; 
     if (k == 13) { 
      return false; // !!! 
     } 
    }); 
}); 
2

また、あなたが述べたように、あなたは、単に次のコントロールにタブを模倣したい場合、あなたはthis method by jdsharpを試みることができます。

$(document).ready(function(){ 
... 
//handle enter key 
$("input").keypress(function (e) { 
    var k = e.keyCode || e.which; 
     if (k == 13) { 
      $(this).focusNextInputField(); 
     } 
    }); 
}); 
関連する問題