如何使用HTML页面中的VBScript将列表框的值设置为某个已存在的值,例如text3
。
这是我的HTML:
<!DOCTYPE html>
<html>
<body>
<select name="sometext" id="dsds">
<option value="1">text1</option>
<option value="2">text2</option>
<option value="3">text3</option>
<option value="4">text4</option>
<option value="5">text5</option>
</select>
</body>
</html>
这是我的VBScript代码:
Dim ie
Set ie = WScript.CreateObject("InternetExplorer.Application")
ie.navigate("hey12.html")
ie.width = 900
ie.height = 600
ie.Visible = 1
WScript.sleep(5000)
Set Helem1 = IE.document.getElementByID("dsds")
Helem1.value = "text3"
使用上面的代码,我无法修改列表框值或文本。
答案 0 :(得分:2)
您可以使用SelectedIndex
元素的<select>
属性通过索引执行此操作。这是从零开始的。由于text3
是第三个选项,因此请使用值2
:
Set Helem1 = IE.document.getElementByID("dsds")
Helem1.SelectedIndex = 2
或者您可以查看每个<option>
元素的文本值,当您找到要查找的元素时,请将其Selected
属性设置为True
:
Set Helem1 = IE.document.getElementByID("dsds")
For Each o In Helem1.Options
If o.InnerText = "text3" Then o.Selected = True
Next
答案 1 :(得分:1)
要设置/更改选项的.value - 或.text - (而不是仅选择它),请使用
Helem1(2).value = "newValue"
Helem1(2).text = "newText"
(解决邦德答案中被盗物品的方法)