dポイントプレゼントキャンペーン実施中!

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からの番号

A 回答 (2件)

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;}})()
    • good
    • 0

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>

この回答への補足

自己解決しました。すいません。

IEオブジェクト.Document.フォーム名.コンボボックス名.value = "選びたい値のvalue"

ありがとうございました。

補足日時:2008/11/04 19:46
    • good
    • 0
この回答へのお礼

ありがとうございます。
しかしながら、これはサーバ側からの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を選択しました。言葉足らずで申し訳ありません。
もし、そのうえで解決策が分かればご教授ください。

お礼日時:2008/10/28 23:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています