vbscript namedItem() 更改选择下拉列表

HTML 选择标签中的 Excel VBA 更改选项中,我使用以下代码更改<select>标签内的选项

For Each objOption In objIE.Document.GetElementsByTagName("table")(0).GetElementsByTagName("td")(tdNode).GetElementsByClassName("txt_input1")(0).Options
    If objOption.Value = SelQ Then
        objOption.Selected = True
        objIE.Document.GetElementsByTagName("table")(0).GetElementsByTagName("td")(tdNode).GetElementsByClassName("txt_input1")(0).OnChange
    Else
        objOption.Selected = False
    End If
Next

这似乎适用于带有嵌套<table>标签的网站,但该网站在没有标签的情况下进行了更新,因此,为了补偿找到所选选项,我使用了这个:

For Each objOption In objIE.Document.getElementById("frmProduction").elements.namedItem("WQ").Options
    If objOption.Value = strVal Then
        objOption.Selected = True
        objIE.Document.getElementById("frmProduction").elements.namedItem("WQ").onchange
        Exit For
    Else
        objOption.Selected = False
    End If
Next

这给了我以下错误: Run-time error '5002': Application-defined or object-defined error

我使用了上面的解决方案,因为它在另一个使用<frames>标签的Internet Explorer 应用程序中工作,因此我对其进行了一些修改:

objIE.document.frames("DemographicsIFrame").document.GetElementByID("DropDownPayerID").value = PayerID
objIE.document.frames("DemographicsIFrame").document.GetElementByID("DropDownPayerID").onchange

我试图绕过它但没有成功。我可以更改选定的选项,仅此而已。它不会使用与所选选项相关的所需信息更新页面。在上面的示例中,这就是onchange事件用于...在更新 PayerID 后更改页面内容的目的。

关于如何进行这项工作的任何建议?

我们实际上能够想出一个解决方案:

For Each objOption In objIE.document.getElementById("frmProduction").elements.namedItem("WQ").Options
    If objOption.Value = strVal Then
        objOption.Selected = True
        Set evtFiroz = objIE.document.createEvent("HTMLEvents")
        evtFiroz.initEvent "change", False, True
        objIE.document.getElementById("WQ").dispatchEvent evtFiroz
        Exit For
    Else
        objOption.Selected = False
    End If
Next

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ng上的Angular JS Action更改选择下拉列表

来自分类Dev

根据优先选择下拉列表更改选择下拉列表?

来自分类Dev

VBScript:更改元素的css

来自分类Dev

VBScript-更改组类型

来自分类Dev

使用SQL数据使用vbscript填充下拉列表

来自分类Dev

使用SQL数据使用vbscript填充下拉列表

来自分类Dev

HTA / VbScript-下拉列表选项中的If语句

来自分类Dev

如何在下拉菜单中更改选择列表项目的字体

来自分类Dev

更改选择框下拉列表中蓝色突出显示的位置

来自分类Dev

VBScript for Excel:如何选择源数据(.SetSourceData)?

来自分类Dev

VbScript搜索特定的标题并选择整个列

来自分类Dev

如果可变部分在vbscript中更改

来自分类Dev

在vbscript中更改文件夹权限

来自分类Dev

使用javascript在选择下拉菜单中更改选项

来自分类Dev

如何更改选择中下拉选项的轮廓颜色?

来自分类Dev

在不使用jquery的情况下使用Javascript在vbscript填充的下拉列表中检索选定的值

来自分类Dev

检索下拉列表中的选定值,该下拉列表由vbscript使用Java脚本(无jquery)填充

来自分类Dev

更改选择的“ onchange”

来自分类Dev

更改选择列表中的值c#

来自分类Dev

Oracle APEX | 如何更改选择列表值并动态提交

来自分类Dev

如何在选择列表中更改选项

来自分类Dev

更改选择列表中的值c#

来自分类Dev

引导模式确认后更改选择列表

来自分类Dev

Angular:动态更改选择中的选项列表

来自分类Dev

在vbscript中使用“图像”类型下拉框

来自分类Dev

VBScript打开对话框以选择文件路径

来自分类Dev

如何通过VBscript或批处理更改Java高级设置?

来自分类Dev

VBscript以NIC的特定IP为目标并更改其DNS设置

来自分类Dev

使用VBScript或批处理更改快捷方式图标

Related 相关文章

  1. 1

    ng上的Angular JS Action更改选择下拉列表

  2. 2

    根据优先选择下拉列表更改选择下拉列表?

  3. 3

    VBScript:更改元素的css

  4. 4

    VBScript-更改组类型

  5. 5

    使用SQL数据使用vbscript填充下拉列表

  6. 6

    使用SQL数据使用vbscript填充下拉列表

  7. 7

    HTA / VbScript-下拉列表选项中的If语句

  8. 8

    如何在下拉菜单中更改选择列表项目的字体

  9. 9

    更改选择框下拉列表中蓝色突出显示的位置

  10. 10

    VBScript for Excel:如何选择源数据(.SetSourceData)?

  11. 11

    VbScript搜索特定的标题并选择整个列

  12. 12

    如果可变部分在vbscript中更改

  13. 13

    在vbscript中更改文件夹权限

  14. 14

    使用javascript在选择下拉菜单中更改选项

  15. 15

    如何更改选择中下拉选项的轮廓颜色?

  16. 16

    在不使用jquery的情况下使用Javascript在vbscript填充的下拉列表中检索选定的值

  17. 17

    检索下拉列表中的选定值,该下拉列表由vbscript使用Java脚本(无jquery)填充

  18. 18

    更改选择的“ onchange”

  19. 19

    更改选择列表中的值c#

  20. 20

    Oracle APEX | 如何更改选择列表值并动态提交

  21. 21

    如何在选择列表中更改选项

  22. 22

    更改选择列表中的值c#

  23. 23

    引导模式确认后更改选择列表

  24. 24

    Angular:动态更改选择中的选项列表

  25. 25

    在vbscript中使用“图像”类型下拉框

  26. 26

    VBScript打开对话框以选择文件路径

  27. 27

    如何通过VBscript或批处理更改Java高级设置?

  28. 28

    VBscript以NIC的特定IP为目标并更改其DNS设置

  29. 29

    使用VBScript或批处理更改快捷方式图标

热门标签

归档