【问题标题】:Read options from drop-down list into an array将下拉列表中的选项读入数组
【发布时间】:2014-07-08 12:29:10
【问题描述】:

我正在尝试编写代码(在 Macro Express Pro 中)以读取下拉框中的所有选项并将它们设置为以下格式的数组:

;option 1;option 2;option 3;option 4;option 5

到目前为止,我能够使其显示在 MsgBox 中(只是作为测试,我不希望在生产中使用消息框),但不将它们附加到数组中。这是我正在使用的(来自网站):

<select id="ctl00_cphContent_ddlWorkQueue" class="ddlbox">
    <option value="4449">option 1</option>
    <option value="4370">option 2</option>
    <option value="4371">option 3</option>
    <option value="4372">option 4</option>
    <option value="4373">option 5</option>
</select>

来自 VBS 外部脚本:

set OptionChooser = MyIE.Document.GetElementbyid("ctl00_cphContent_ddlWorkQueue")

For Each objOption in OptionChooser.Options
    Msgbox objOption.InnerText
Next

【问题讨论】:

    标签: vbscript dropdownbox


    【解决方案1】:

    创建一个动态数组并用选项填充它,然后Join 数组:

    ReDim arr(OptionChooser.Options.Length - 1)
    For i = 0 To OptionChooser.Options.Length - 1
      arr(i) = OptionChooser.Options(i).Text
    Next
    str = Join(arr, ";")
    
    MsgBox str
    

    【讨论】:

    • 如何访问外部脚本之外的变量?我尝试使用 str 并将 str 更改为 Work 但只能在 MsgBox 中获得结果,而不是在外部脚本之外。
    • @MichaelAustinKerr:“外部”是什么意思?您希望该价值流向何方?
    • 抱歉,想通了。该值最终变得太大,因此无法正确复制。我会尝试将其写入文本或其他内容,然后从那里取回。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    • 2017-10-15
    • 1970-01-01
    • 1970-01-01
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多