我在使用我的vbscript在网站上使用select元素时遇到了麻烦。整个select元素用于在一个框中生成用户列表,用户单击并选择一个或多个用户并按下ADD按钮,以便将这些用户转移到第二个框。基本上,其中一个是“可用用户”列表,第二个是“正在使用的用户”。
这是选择元素列表的结构。
<option value="009">
John Doe
</option>
<option value="278"> … </option>
<option value="556"> … </option>
我知道我可以通过objDivContent.document.GetElementById("available_members").value=009
选择元素,但问题是我不知道这些元素的值。值或多或少是静态的,但我无法访问它们 - 我可以有一个名称列表,即标签之间的内容。
我需要我的脚本做的是用一个名单列表来加载它并加载页面,让它选择这些用户并按下每个用户的“添加”按钮。或者对所有人来说,因为这是一个多选择。
任何想法如何使用我的数据访问这些元素?
答案 0 :(得分:1)
将您的用户列表加载到dictionary,例如像这样:
Set namelist = CreateObject("Scripting.Dictionary")
namelist.CompareMode = vbTextCompare 'case-insensitive
For Each name In WScript.Arguments.Unnamed
namelist(name) = True
Next
有了这个,您应该能够添加与下拉列表中的条目匹配的名称,如下所示:
Set memberlist = objDivContent.document.getElementById("available_members")
Set addButton = objDivContent.document.getElementById("add_button")
For Each opt In memberlist.options
If namelist.Exists(opt.text) Then
opt.Selected = True
addButton.Click()
opt.Selected = False
End If
Next