小编Bry*_*ies的帖子

Excel VBA使用Knockout控制网页; 似乎工作; 但什么都没有得救

摘要:

基本上尝试使用Excel VBA编辑网站.编辑似乎有效,但是当我使用保存按钮时,不保存任何内容.我知道保存按钮有效,如下所述.那么为什么我的更新数据不会在屏幕上显示?

故事:

我有这个代码,我已经使用Excel VBA工作了一段时间.它在Internet Explorer中打开一个网页,在我想要的地方导航,填写一大堆数据,所有数据都显示在屏幕上,使用各种方法,例如:

For Each objElement In objElementColl
ExtractedName = objElement.outerHTML

If InStr(ExtractedName, "NewPermit") > 0 Then
objElement.Checked = True
Run Code Online (Sandbox Code Playgroud)

Set DropDown = objHTML.getElementById("ProjectFile-AccreditedCertifierId")
DropDown.selectedIndex = 1
Run Code Online (Sandbox Code Playgroud)

要么

objHTML.getElementsByName(ElementName)(0).Value = ValueCheck
Run Code Online (Sandbox Code Playgroud)

所有这些都能很好地工作,并在屏幕上进行更改.然后我使用以下命令单击保存:

Set objElementColl = objHTML.getElementsByClassName("btn")

For Each objElement In objElementColl
    ExtractedName = objElement.outerHTML

    If InStr(ExtractedName, "click: save, enable:") > 0 Then
        objElement.Click
        ExtractedName = 1
        Exit For
    End If
Next
Run Code Online (Sandbox Code Playgroud)

哪个再次正常.问题是它实际上并没有从上面的3个代码中保存我的更改.我试过的是

a)暂停我的代码并手动点击保存(同一问题)

b)暂停我的代码,手动更改复选框并运行代码进行保存(保存手动更改,但不保存编码的代码)

c)暂停代码并手动更改框并手动保存(仅保存手动更改的框)

因此,从上面看,我的保存点击似乎有效,但由于某种原因,尽管使用代码可以明显更改框并填写,但可见和背景之间存在差距.

无论如何,一些HTML源代码.在检查我正在改变的元素时,Chrome会显示什么:

    <fieldset>
        <legend>Proposal</legend>

        <div class="col-xs-12 col-sm-8 col-md-6">
            <div class="row"> …
Run Code Online (Sandbox Code Playgroud)

javascript excel vba javascript-events knockout.js

8
推荐指数
1
解决办法
640
查看次数

标签 统计

excel ×1

javascript ×1

javascript-events ×1

knockout.js ×1

vba ×1