• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:AJAX+PHPでセレクトボックスの連動)

AJAX+PHPでセレクトボックスの連動

このQ&Aのポイント
  • AJAXとPHPを使用して、セレクトボックスを連動させる方法について教えてください。
  • 一回目のセレクトボックスの選択で、2つ目のセレクトボックスを生成できましたが、2回目の選択時に問題が発生します。どのように対処すれば良いですか?
  • 質問者は、AJAXとPHPを使ってセレクトボックスを連動させようとしています。最初の選択では2つ目のセレクトボックスを生成できましたが、2回目の選択時に問題が発生します。解決策を教えてください。

質問者が選んだベストアンサー

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

No.1です。おっと、複数<option>があるのでリプレースはだめですね。 やはり全部削除してから追加ですね。 success: function(data, status){ $("#category2").empty(); $.each(data,function(i) { $('#category2').append($('<option>').attr({ value: i }).text(data[i])); }); },

eccschool
質問者

お礼

おお・・・ すばらしい!! emptyっていうのがあったんですね。 感激しました。 javascriptで普通にonchangeでできないこともないのですが、敢えてajaxに挑戦してみました。 ありがとうございました。 あやうくノイローゼになりそうでした。(笑)

その他の回答 (1)

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

セレクトボックスのhtml部分が、掲載されてないので、 中途半端な解答ですが、 appendする前に、前にappendした<option>を削除していないから 積みあがっていくのだと思います。 jQueryだとリプレースのメソッドもあるので、 $.each(data,function(i) { $('#category2 > option').replaceWith($('<option>').attr({ value: i }).text(data[i]) }); でどうでしょうか。

関連するQ&A