電子書籍の厳選無料作品が豊富!

jQueryでのプルダウンの操作

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

A 回答 (3件)

そっかeach使う手があるんですね。


こちらが正解ですね。こちらの方がぜんぜんスマートです。
私も一つ引き出しが増えました。
ありがとうございました。
    • good
    • 0

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(){
   //処理;
  });
 });
});

でよくないですか。
    • good
    • 0

まとめてやるなら、ループ文をつかうのはどうでしょうか?




$(function(){
  var ct=$("#test select").length;
  for(i=0;i<ct;i++){
    $("#test select:eq("+i+")").change(function(){
      alert('a');
    })
  })
})
実際、動かしてないので保証はしませんが、こんなイメージでやればできるはずです。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!