VBA MSHTML TextInput单击失败

时间:2018-06-25 12:29:56

标签: vba excel-vba web-scraping mshtml excel

我以前使用Excel VBA进行过多个Web剪贴项目,但以前从未遇到过此问题。在过去的几个小时中,我一直在搜索该问题,但尚未找到解决方案。

场景: 我的网页由一个列表框和一个用作过滤器/搜索的文本框组成。不幸的是,我无法透露网页信息,但是在列表框元素的某处我看到了“ JQuery”一词。创建HTMLInputElement后,将其设置为文本框对象,并将其值更改为“ TEXT”。我希望列表得到更新,但是什么也没发生。我尝试使用不同的方法,但是都失败了。

Text_Field.Focus
Text_Field.FireEvent "onclick"
Text_Field.Value = "TEXT"
Text_Field.Click

我设法将文本放在文本框中,但是单击部分不起作用。当我手动执行此操作时,只要在文本框中输入短语,列表就会立即更新。有什么想法或建议吗?

我试图模拟“输入键”的按下,但是它也不起作用。

您的帮助将不胜感激。

最好, 阿尔曼

1 个答案:

答案 0 :(得分:0)

以编程方式操作元素时,事件不会触发。您还必须使用document.createEventObject / inputElement.fireEvent(IE8或更低版本)或document.createEvent / inputElement.dispatchEvent(IE9 +)来模拟事件。

您需要触发什么事件取决于脚本感兴趣的内容(onkeypress,onblur,onpaste等)。