9

onkeyupが完了したときに関数を実行したいテキストフィールドがたくさんあります。それらはすべて同じ関数を実行するので、これの代わりに1行でそれを実行できる方法はありますか?

$('#element1').keyup(function(){getData()});
$('#element2').keyup(function(){getData()});

また、それができる場合、ドロップダウンのためにそこにスローしてオンチェンジするにはどうすればよいですか?皆さんありがとう!!

4

3 に答える 3

18

カンマを使用して要素を区切ることができます。

$("#element1, #element2").keyup(getData);

しかし、すべてのIDをリストする代わりに、クラスを使用するのはどうでしょうか。

<!-- HTML -->
<input id="element1" class="element" />
<input id="element2" class="element" />

// JavaScript
$(".element").keyup(getData);
于 2012-05-30T18:18:13.047 に答える
5

それらをセレクターに追加します。

$('#element1, #element2').keyup(function(){ // ...

またはadd()、jQueryが以下を使用してIDのみのセレクターのショートカットを使用できるため、この場合はおそらくより効率的な方法を使用しgetElementByIdます。

$('#element1').add('#element2').keyup(function(){ // ...
于 2012-05-30T18:19:42.600 に答える
1

内で複数のセレクターを使用することが可能$()です。

$('#element1, #element2').keyup(function(){
   getData()
 });

または要するに

$('#element1, #element2').keyup(getData);

.change()イベントを複数のselectボックスにバインドする場合は、すべてselectの共通クラスを指定します

<select class="myselect"></select>
<select class="myselect"></select>
<select class="myselect"></select>

$('.myselect').on('change', function() {

});
于 2012-05-30T18:17:55.947 に答える