• 締切済み

jQueryでのプルダウンの操作

jQueryでのプルダウンの操作 jQueryでプルダウンを選択して値を変更したときに処理を行いたいです。 1つのプルダウンなら$("#test select").change(...)のようにかけると思いますが、プルダウンが複数あるときは$("#test select").change(...) $("#test2 select").change(...) のように1つ1つ書いていかなければならないのでしょうか?2つや3つなら問題ないのですが、数が増えてくると面倒だしメンテも大変なのでまとめて処理が行えればと思っています。 よろしくお願いします。

みんなの回答

  • mori1115
  • ベストアンサー率50% (1/2)
回答No.3

そっかeach使う手があるんですね。 こちらが正解ですね。こちらの方がぜんぜんスマートです。 私も一つ引き出しが増えました。 ありがとうございました。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

2つや3つなら問題ないのですが、数が増えてくると面倒だしメンテも大変 ==>idをtest1、test2...みたいにその意味じゃなく連番管理でやってると、 結局融通がきかなく、結局数が増えてくると面倒だしメンテも大変です。 共通の処理用のクラスでもセットしておけば <select id="test1" class="change_target"></select> <select id="t_2" class="change_target"></select> <select id="tst-3" class="change_target"></select> $(function(){  $.each($(".change_target"),function(){   $(this).change(function(){    //処理;   });  }); }); でよくないですか。

  • mori1115
  • ベストアンサー率50% (1/2)
回答No.1

まとめてやるなら、ループ文をつかうのはどうでしょうか? 例 $(function(){   var ct=$("#test select").length;   for(i=0;i<ct;i++){     $("#test select:eq("+i+")").change(function(){       alert('a');     })   }) }) 実際、動かしてないので保証はしませんが、こんなイメージでやればできるはずです。

関連するQ&A