• 締切済み

Javascriptを使って動的にラジオボタンを配置する方法

こんにちは。 Javascriptを模索しながら仕事で作業しています。 (突然、要員として投入されてしまいました <(ToT)> ) タイトルにあるように、ラジオボタンをJavascript を使って、ラジオボタンの配置数を動的に変化させ たいのですが、ネットを検索しても、ラジオボタン の配置数を動的にしているサイトがないので、難航 中す。「ラジオボタンの配置数を固定として…」が ほとんどでした。 画面を表示するときに、JavaBeanでラジオボタンの 情報を獲得できるので、この情報に従い表示したい です。表示中に、ラジオボタンの配置を変更するこ とはなく、submitにより、入力内容のチェックを行っ た後、サーブレットを起動する流れになっています。 すみませんが、手助けお願いします。

みんなの回答

  • T0ngT0ng
  • ベストアンサー率40% (8/20)
回答No.4

#2です。 そうですか、影響範囲が大きすぎる。。。大変ですね。。。 (なんとなく、それでもJSPなりサーバ側をいじるほうが影響範囲狭そうに思いますが。) そうすると、たとえば、以下のようにラジオボタンを埋め込みたい箇所に目印となる<div>なり<span>なりをidをつけて書いておいて、そこのinnerHTMLを書き換えてあげる、ぐらいではどうでしょう? IE6/Opera7ではとりあえず動きましたが、NNとか動かない可能性が高いです。 -- <form action=""> <div id="target"> </div> <input type="submit" value="go"> </form> <script type="text/javascript"> var rdio=document.all.item("target"); alert(rdio); rdio.innerHTML= "<input type='radio' name='aa' value='1'>1<input type='radio' name='aa' value='2'>2"; </script>

asaichi
質問者

お礼

有難うございます。 参考になります。 ブラウザもかなり幅広く使われるようなので、 この回答の方法は、保留にさせて頂きます。

回答No.3

下のURLのページの「ノードの追加と削除」をご覧ください。 やったことはないですが、いかがでしょうか。

参考URL:
http://www.parkcity.ne.jp/~chaichan/src/javascdom01.htm#nodes
asaichi
質問者

お礼

有難うございます。 今のところ、理解しがたいところがあるので、 URLにあるようなのは、保留にさせて頂きました。

  • T0ngT0ng
  • ベストアンサー率40% (8/20)
回答No.2

なにか、話がおかしいですね。。。 JavaScriptでJavaBeanは使えるはず無いのでServlet/JSPでなにか処理を行っているんだと思います。 で、表示中にラジオボタンの配置が変わらないのであれば、 ServletなりJSPなりで、ラジオボタンを表示するHTMLを 出力しちゃえばいいだけでは? 数が一定ではないラジオボタンからJavaScript上で値を取得してチェックする方法を気にされてるのですか?

asaichi
質問者

補足

>ServletなりJSPなりで、ラジオボタンを表示するHTMLを… Servletでやろうとしたのですが、影響範囲が大きすぎたのでJavaScriptで実現しようかと… No1のところで、補足させていただきました。 >数が一定ではないラジオボタンからJavaScript上で… チェックの方法はネットにサンプルがあったので、今の所問題なさそうと予想しています。

回答No.1

こんにちは。 うーむ・・・、意味不明です・・・。 >>Javascriptを使って JavaScriptですか? >>ラジオボタンの配置数を動的に変化させたいのですが イメージが湧かない・・・。 もう少し補足をお願いします・・・。 (^^ゞ

asaichi
質問者

補足

>JavaScriptですか? はい。 なぜかと言うと、セレクトボックスの作りが JavaScriptで生成されていたので、上司から の命令で、使っています。 >イメージが湧かない・・・。 このようなイメージです。 結果として、「document.write( str_Html );」しか 表示されなくなるんです… ↓ a.js function Arrays(text, value ) {  this.text=text;  this.value=value; } a.jspが展開 <title>分類</title> <script language="javascript1.1"> <!--- function Arrays_dataset() { Arrays[0] = new ArraysSet('分類1','1'); Arrays[1] = new ArraysSet('分類2','2'); Arrays[2] = new ArraysSet('分類3','3'); Arrays[3] = new ArraysSet('分類4','4'); } //---> </script> : function Page_Load() {  Arrays=new Array();  Arrays_dataset();  Arrays_Dsp(); } : <body topmargin="2" onLoad="Page_Load()"> <form name="form1" method="post"> : <tr> <td> <input type="radio" name="l_type" value="0" tabindex="6" ">表示 <input type="radio" name="l_type" value="9" tabindex="7" ">非表示 </td> </tr> <tr> <td class="no_td">分類区分</td> <script language="javascript1.1"> <!--- function Arrays_Dsp() {  iCheckdFlg = false;  for( iLoop = 0 ; iLoop < Arrays.length ; iLoop ++ ){   str_Html = "<input type=\"radio\""   + "name=\"" + "RadioBtn" + "\""   + "value=\"" + Arrays[ iLoop ].value + "\"";   str_Html = str_Html   + ">"   + Arrays[ iLoop ].text ;   //document.write( str_Html );  } //---> </script> </tr>

関連するQ&A

専門家に質問してみよう