- ベストアンサー
HTMLコンボボックスへの項目追加
- HTMLのWeb作成中の方へ。HTMLコンボボックスに項目を追加する方法を教えます。
- HTMLコンボボックスにvbscriptで項目を追加する方法を解説します。
- HTMLのコンボボックスに項目を追加したい方へ。簡単なサンプルコードをご紹介します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> Set myOption = myform.name1.createElement("OPTION") > myOption.options.text = "test" > myOption.options.value = "test" > myform.name1.add(myOption) > (最後の行は間違ってますよねぇ。。) えー・・・悲しいお知らせです。 逆に「最後の行だけ、かろうじて正解」です。 サンプルをVBScriptに読み替えると、 ---------------------------------------------------------- Dim oOption Set oOption = document.createElement("OPTION") oOption.text="Apples" oOption.value="5" document.all.MyList.add oOption ---------------------------------------------------------- こんな感じになります。 #キーワードは、ほとんど同じ。 違うのは、純粋にシンタックス部分だけ・・・ ・変数宣言がVBScriptでは「Dim」で、JScriptでは「var」 ・VBScriptでは変数宣言と値の代入が同時にはできないのに対して、JScriptでは同時に可能(var宣言と、変数=値を一度にできる) ・VBScriptでは、Objectの代入には「Set」が必要。 ・JScriptでは、各コマンドを「;」で区切らなければならないが、VBScriptでは不要。 等
その他の回答 (2)
- dsuekichi
- ベストアンサー率64% (171/265)
> 上記の追加の仕方が正しいのかどうかもわかっておりませんので 「完全に間違っている」のでは・・・ これって「変更」する方法ですね、「追加」の方法ではありません。 #コレでやるなら、静的に(最初に)必要なOptionを用意しておく必要があります。 ちなみに、 > 上記で"test1"という項目は追加されるのですが、 との事ですが、私の環境(IE6SP2)では、"test1"の追加も行われません。 追加のやり方は、先ほど提示済みです。 #『「OPTIONエレメント」を「Create」して、値を設定後、「Add」する。』
お礼
dsuekichiさん、ご指摘ありがとうございます。 やっぱり、間違っていたのですね。。 > #『「OPTIONエレメント」を「Create」して、値を設定後、「Add」する。』 質問の最初のサンプルHTMLの場合ではどのようなコードになるでしょうか? (教えて頂いたサイトを参照させていただいたのですが、javaはほとんどわからなくて。。。すいません。)
補足
dsuekichiさん。 ちなみに下記コードでやってみましたが、ダメでした。 どこがいけないのかご教授ください。 Set myOption = myform.name1.createElement("OPTION") myOption.options.text = "test" myOption.options.value = "test" myform.name1.add(myOption) (最後の行は間違ってますよねぇ。。) よろしくお願いします。
- dsuekichi
- ベストアンサー率64% (171/265)
> うまくいきません。 どういう言うコードを試して、どう上手くいかなかったんでしょう? とりあえず、「追加の仕方」は以下に出ています。 「SELECT」 (http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpisdk/dhtml/references/objects/SELECT.asp) #提示されたサンプルはJScriptです、VBScriptへ読み換えてください。
お礼
dsuekichiさん、コメントありがとうございます。助かります。 >> うまくいきません。 > どういう言うコードを試して、どう上手くいかなかったんでしょう? --------------------------------- <form name="myform"> <select name="name1"></select> <select name="name2"></select> <input type="button" onclick="vbscript:Sample()"> </form> <script language="vbscript"> Sub Sample() myform.name1.option(0).text="test1" myform.name1.option(0).value="test1" myform.name1.option(1).text="test2" myform.name1.option(1).value="test2" End Sub </script> --------------------------------- 上記で"test1"という項目は追加されるのですが、 "test2"という項目の部分でエラーが発生して追加されません。 (ループ文で項目を多数追加するのがねらいです。) また、上記の追加の仕方が正しいのかどうかもわかっておりませんので、ご教授頂けますでしょうか? よろしくお願いします。
お礼
> えー・・・悲しいお知らせです。 > 逆に「最後の行だけ、かろうじて正解」です。 (^^:)。。。苦笑 動作確認しました! これでやっと先に進めます。 dsuekichiさん、大変、大変ありがとうございました。