- 締切済み
VBScriptでHTMLのセレクトボックスで表示されている値に指定したい
VBScriptでHTMLのセレクトボックスで表示されている値(value)に指定したいと思っています。どのようにすればよいのでしょうか?詳しくは下記参照。 もし、VBSで無理であるのならほかの言語で可能な言語を教えていただきたく思います。 例:”value_1”を指定してVBSで選びたい <select name="select_name" onchange="select_onchange"> <option value="value_1">value_1_1</option> <option value="value_2">value_2_2</option> </select> (注意) 下記のように位置情報で指定するのではなく、valueの値(value_1)や表示されている値(value_1_1)でしたいと思っています。 IEオブジェクト.Document.フォーム名.コンボボックス名.selectedIndex = 0からの番号
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- notnot
- ベストアンサー率47% (4900/10358)
VBSでDOMをやったこと無いので、ブックマークレットでやる方法を。 IEで新規にお気に入りを作って内容を下記にします。警告が出ますが気にせず登録。 あとは目的のページを表示して、登録したお気に入りを選択。 javascript:(function(){var sel=document.getElementById("x");var opt=sel.getElementsByTagName("option");for(var i=0;i<opt.length;++i){if(opt.item(i).getAttribute("value")=="value_2"){opt.item(i).selected="selected";break;}})()
- notnot
- ベストアンサー率47% (4900/10358)
VBScriptでも出来ると思いますが、IE限定になっちゃうのでこういうのはJavaScriptでやるのが普通です。 <select id="x" name="select_name" onchange="select_onchange()"> <option value="value_1">value_1_1</option> <option value="value_2">value_2_2</option> <option value="value_3">value_3_3</option> </select> <script type="text/javascript"> var sel=document.getElementById("x"); var opt=sel.getElementsByTagName("option"); for(var i=0;i<opt.length;++i){ if(opt.item(i).getAttribute("value")=="value_3"){ opt.item(i).selected="selected"; break; } } </script>
お礼
ありがとうございます。 しかしながら、これはサーバ側からのWEBページの編集制御を想定していると思います。 私がやりたいことは、すでにIE用で構築されているWEBページを制御したいと思っています。つまり、 <select name="select_name" onchange="select_onchange"> <option value="value_1">value_1_1</option> <option value="value_2">value_2_2</option> </select> のように表示されているWEBページに”value_2_2”をプログラムで自動入力したいと思っているのです。 そこで、制御する言語としてVBSを選択しました。言葉足らずで申し訳ありません。 もし、そのうえで解決策が分かればご教授ください。
補足
自己解決しました。すいません。 IEオブジェクト.Document.フォーム名.コンボボックス名.value = "選びたい値のvalue" ありがとうございました。