- 締切済み
jQueryでのプルダウンの操作
jQueryでのプルダウンの操作 jQueryでプルダウンを選択して値を変更したときに処理を行いたいです。 1つのプルダウンなら$("#test select").change(...)のようにかけると思いますが、プルダウンが複数あるときは$("#test select").change(...) $("#test2 select").change(...) のように1つ1つ書いていかなければならないのでしょうか?2つや3つなら問題ないのですが、数が増えてくると面倒だしメンテも大変なのでまとめて処理が行えればと思っています。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- mori1115
- ベストアンサー率50% (1/2)
そっかeach使う手があるんですね。 こちらが正解ですね。こちらの方がぜんぜんスマートです。 私も一つ引き出しが増えました。 ありがとうございました。
- yyr446
- ベストアンサー率65% (870/1330)
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)
まとめてやるなら、ループ文をつかうのはどうでしょうか? 例 $(function(){ var ct=$("#test select").length; for(i=0;i<ct;i++){ $("#test select:eq("+i+")").change(function(){ alert('a'); }) }) }) 実際、動かしてないので保証はしませんが、こんなイメージでやればできるはずです。