• ベストアンサー

テキストエリアの文字列を切り替えたい

リストボックスで選択した値によって、テキストエリアの文字列を切り替えたいのですが、いい方法はありますでしょうか。

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

いろいろ考えられますがだいたいこんな感じでしょう <script> function changeFunc(obj){ var v=obj.options[obj.selectedIndex].value; var msg={0:"",1:"text1の説明です",2:"text2の説明だよ",3:"text3の説明である"}; document.getElementById("text").value=msg[v]; } </script> <form> <p> <select name="category" onchange="changeFunc(this)"> <option value="0">選択して</option> <option value="1">text1</option> <option value="2">text2</option> <option value="3">text3</option> </select> <textarea name="text" id="text" cols="60" rows="10"></textarea> </p> </div>

hophop
質問者

お礼

この度はありがとうございました。

hophop
質問者

補足

ご回答ありがとうございます! 早速試してみましたが、動作を確認できました。ありがとうございます。 ちなみに、テキストエリアに入れ込むテキストをCSSで装飾することは可能でしょうか。

その他の回答 (3)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.4

>テキストエリアに入れ込むテキストをCSSで装飾 テキストエリア内のテキストをCSSで細かく装飾すること難しいですね もしそのような要望がある場合は、テキストエリアではなく divなどで処理した方がよいかもしれません。

  • youser
  • ベストアンサー率43% (123/286)
回答No.2

単純にリストボックスの設定されている列を、セルの値で参照して、IF分岐で、文字列を挿入すればいい。 マクロなら ElseIF か Select Case でいくらでも参照条件の数を設定可能。

hophop
質問者

お礼

どうもありがとうございました

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

もすこし具体的に

hophop
質問者

補足

ご回答ありがとうございます。 <select name="category" > <option value="1">text1</option> <option value="2">text2</option> <option value="3">text3</option> </select> <textarea name="text" id="text" cols="60" rows="10></textarea> html上で、上記のようなリストボックスとテキストエリアを用意して、text1を選択した場合にテキストエリアに「text1の説明文」、text2を選択した場合にテキストエリアに「text2の説明文」といった切替ができるようにしたいとおもっています。

関連するQ&A