188

Enterキーを押したときにボタンクリックイベントを実行する必要があります。

現時点では、イベントは発生していません。

可能であれば、構文を教えてください。

$(document).on("click", "input[name='butAssignProd']", function () {
   //all the action
});

これは、入力時にクリックイベントを発生させようとする私の試みです。

$("#txtSearchProdAssign").keydown(function (e) {
  if (e.keyCode == 13) {
    $('input[name = butAssignProd]').click();
  }
});
4

13 に答える 13

30

これを試して

$('#twitterSearch').keydown(function(event){ 
    var keyCode = (event.keyCode ? event.keyCode : event.which);   
    if (keyCode == 13) {
        $('#startSearch').trigger('click');
    }
});

それがあなたを助けることを願っています

于 2013-08-10T09:12:59.957 に答える
15
$('#txtSearchProdAssign').keypress(function (e) {
  if (e.which == 13) {
    $('input[name = butAssignProd]').click();
    return false;  
  }
});

また、ほとんどの問題を包括的にカバーする「Enter」のフォームを送信することも見つけました。

于 2013-08-10T09:08:51.723 に答える
8

あなたはほとんどそこにいました。ただし、ここで試すことができます。

$(function(){
  $("#txtSearchProdAssign").keyup(function (e) {
    if (e.which == 13) {
      $('input[name="butAssignProd"]').trigger('click');
    }
  });
});

イベントは実際には2つのイベント、つまりthenで構成されているため、私はtrigger()click を実行してkeyupinsted のイベントにバインドしていました。したがって、とで可能な限り同じものに似せます。keydownclickmousedownmouseupkeydownkeyup

ここにデモがあります

于 2013-08-10T09:15:11.270 に答える
6

追加する別の追加事項:

を使用するなど、入力を動的に追加する場合は、jQuery関数append()を使用する必要があります。on()

$('#parent').on('keydown', '#input', function (e) {
    var key = e.which;
    if(key == 13) {
        alert("enter");
        $('#button').click();
        return false;
    }
});

アップデート:

これを行うさらに効率的な方法は、switch ステートメントを使用することです。あなたもそれをよりきれいに感じるかもしれません。

マークアップ:

<div class="my-form">
  <input id="my-input" type="text">
</div>

jQuery:

$('.my-form').on('keydown', '#my-input', function (e) {
  var key = e.which;
  switch (key) {
  case 13: // enter
    alert('Enter key pressed.');
    break;
  default:
    break;
  }
});
于 2015-09-08T09:52:29.763 に答える
3

コードに preventDefault() 関数を含めるだけで、

$("#txtSearchProdAssign").keydown(function (e) 
{
   if (e.keyCode == 13) 
   {
       e.preventDefault();
       $('input[name = butAssignProd]').click();
   }
});
于 2017-03-08T11:22:54.700 に答える
3

Enter キーが押されたときにボタンのクリックを模倣しようとしていますか? その場合は、trigger構文を使用する必要がある場合があります。

変更してみる

$('input[name = butAssignProd]').click();

$('input[name = butAssignProd]').trigger("click");

これが問題でない場合は、次の投稿の解決策を参照して、キー キャプチャ構文をもう一度確認してみてください: jQuery Event Keypress: which key was written?

于 2013-08-10T09:05:07.100 に答える