javascript - 如何让 VBA 提交 javascript 表单?

标签 javascript html excel vba web-scraping

我不确定我是否正确引用了按钮。我不断得到:

Run-time error '438': Object doesn't support this property or method.

这就是我的代码目前的样子:

Sub russInd()
    Dim oButton As Object, HTMLdoc As Object
    Dim sht1 As Worksheet, myURL As String
    Set ie = CreateObject("InternetExplorer.Application")
        Set sht1 = Worksheets("Day 1")
        myURL = sht1.Cells(32, 2).Value
        ie.navigate myURL
        ie.Visible = True

        Do Until ie.ReadyState = 4
            DoEvents
        Loop

        'Locate The correct forms and buttons
        Set HTMLdoc = ie.document
        Set oButton = HTMLdoc.querySelectorAll("a[href='javascript:submitForm(document.forms[0].action);']")
        'Check All Checkboxes
        HTMLdoc.getElementByID("chkAll").Click
        oButton.Click
End Sub

我正在使用的网页是:

  https://indexcalculator.ftserussell.com/

网页代码如下:

Web Page Code

我需要点击下一步按钮,我试过使用

.getElementByID("CtlNavigation_lblControl")

要单击按钮,但只是跳过了命令,我猜它什么也没单击。谢谢!

最佳答案

querySelectorAll 返回 nodelist .您可能需要 querySelector

尝试

HTMLdoc.getElementById("CtlNavigation_lblControl").querySelector("a").Click

HTMLdoc.querySelector("CtlNavigation_lblControl a").Click

关于javascript - 如何让 VBA 提交 javascript 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56583758/

相关文章:

javascript - 阻止 Smart Client 将 Array 类元素添加到我的数组中

javascript - 两个 onmouseout 事件对各自的元素执行相同的操作

php - 减少 MySQL 购物车中的商品数量

javascript - 如何修复 Javascript HTML 函数内的 onfocus 引号 this.id?

excel - 有公式可以删除最后一个字符右侧的所有字符(可能有多个)vba问题

VBA - 不带返回变量的调用函数

javascript - str[0] 和 str.charAt(0) 的区别

javascript - 单击 Webkit 通知时如何从浏览器中的任何其他选项卡返回当前选项卡

javascript - ionic 2 : hide and display div with ngClass

excel - 替换 Excel 文件页眉和页脚上的文本