5

ここで私のjqueryについて少し助けが必要です

「my-」で始まり「-press」で終わる名前のすべてのボタンに「クリック」イベントが必要です。

<input type="button" id="my-button-x-press" name="my-button-x-name-press" />

DOM に動的に追加されたボタンには、同じイベントが必要です。

4

5 に答える 5

10

http://api.jquery.com/category/selectors/

$('input[type=button][name^=my-][name$=-press]').click(function() {
   // code
})

イベントを要素に動的に割り当てるには、on http://api.jquery.com/on/を使用し、適切にイベントするための 2 番目の引数としてセレクターを指定しますdelegate

$('#container').on('click', 'input[type=button][name^=my-][name$=-press]', function() {
   // code
})

で入力をラップしていると仮定すると、#containerそれ以外の場合は に置き換えますが、常に最も近い祖先を選択することをお勧めします#containerbodyselector

于 2012-04-11T06:41:48.010 に答える
2

属性がselectorと等しく、属性がselectorで始まり、属性がselectorで終わりdelegateメソッドを使用して、後で追加される要素のイベントをキャッチできます。

$('body').delegate('input[type=button][name^="my-"][name$="-press"]', 'click', function(){
  ...
});
于 2012-04-11T06:43:52.997 に答える
0

あなたはこのようにそれを行うことができます

$('#my-'+dunamic_change_here+'-press').click(function(){
  // your code
});
于 2012-04-11T06:45:15.787 に答える
0

頭のてっぺんから:

$('input[name^="my-"]input[name$="-press"]').click(function(){
    //Stuff to happen.
});

それらが動的にDOMに追加される場合:

$('input[name^="my-"]input[name$="-press"]').on('click', function(){
    //Stuff to happen.
});

Matpolsの答えは、おそらく実際にそれを行う最も簡単な方法です。

于 2012-04-11T06:45:42.680 に答える
0

それらすべてにクラスを与えて、次のことを行います。

$('.classname').click(function(){etc.});
于 2012-04-11T06:41:56.903 に答える