javascript - 通过 VBA 从 IE 页面的下拉列表中选择一个值

标签 javascript html vba internet-explorer web-scraping

我正在尝试从 IE 页面的下拉列表中选择一个值。

我试过很多方法。它什么都不做。

下拉源代码:
source code of the drop down

我试过的代码,选择带有“EVR”的值(下拉列表中只有一个值):

Application.Wait Now + #12:00:06 AM#

IE.Visible = True

'IE.document.getElementById("fileOnlineReturnTaxType").Value = "EVR"

'IE.document.getElementsByName("taxType").Value = "84"

   'Set oSelect = IE.document.getElementById("fileOnlineReturnTaxType")
    '    oSelect.Focus
     '   oSelect.selectedIndex = 1
      '  oSelect.FireEvent "onchange"

 'IE.document.getElementById("fileOnlineReturnTaxType").Click


  'Set Link3 = IE.document.getElementsByTagName("span")

   ' For Each t In Link3
          ' If t.innerText = "Select a tax type..." Then
          ' MsgBox (t.innerText)
           '   t.Click
            '  Exit For
           'End If
          'Next t

最佳答案

尝试添加一个更改事件并触发它

Option Explicit

Public Sub MakeSelection()
    Dim ie As New InternetExplorer
    With ie
        .Visible = True
        .Navigate2 "url"

        While .Busy Or .readyState < 4: DoEvents: Wend

        Dim event_onChange As Object
        Set event_onChange = .document.createEvent("HTMLEvents")
        event_onChange.initEvent "change", True, False

        With .document.querySelector("#fileOnlineReturnTaxType")
            .selectedIndex = 1
            .FireEvent "onchange"
            .dispatchEvent event_onChange
        End With
        Stop
        .Quit
    End With
End Sub

关于javascript - 通过 VBA 从 IE 页面的下拉列表中选择一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54902310/

相关文章:

javascript - 无效的钩子(Hook)调用按钮来提交表单

javascript - Angular 表达不评估

jquery - 时间轴的悬停问题

excel - 获取表格列 Excel VBA 的范围(或值)

javascript - 在 ipython 笔记本中默认隐藏输入单元

javascript - HTML:选中复选框时使元素不可见

javascript - 如何使切片图像成为 body 的背景图像?

vba - VBA 项目可以从 Office 2007 访问哪些表单控件?

vba - 尝试复制工作表时出现运行时错误 '424' "object required"

javascript - 获取最接近组件 Angular 5 的元素