VBA .getElementbyID并将值传递给onchange javascript事件

问题描述 投票:0回答:1

我有以下代码,通过使用.getelementbyid方法从下拉列表中选择一个项目。页面的工作方式是选择项目后,会弹出一个新屏幕,允许向某人发送消息(当您从下拉列表中选择项目时,表单会使用onchange事件进行处理)。运行此代码时,它会选择正确的项目,但页面不会重新填充。

With HTMLDoc2

.getElementById("navbar1").setAttribute "value", "getaddr"

End With

如何强制表单识别您已选择其中一个下拉项并处理onchange事件?

javascript html vbscript
1个回答
3
投票

我正在寻找类似的答案,发现这可能有用。

我在网页上有一个SELECT元素(有一个ID),它有一个与之关联的onchange javascript。我按如下方式访问它(使用你的例子): -

dim objURLpage as MSHTML.HTMLdocument

dim appIE as InternetExplorer

dim objSELECTelement as MSHTML.HTMLSelectElement 

'这种类型取决于你的HTML元素类型,但通常下拉列表是“SELECT”元素之间的“OPTION”元素

Set objURLpage = appIE.document  'I found this gives current web page that's open

set objSELECTelement = objURLpage.getElemebtById("navbar1")

objSELECTelement.selectedindex = 0

'数字取决于从“0”开始的下拉列表中项目的位置

objSELECTelement.FireEvent("onchange")
© www.soinside.com 2019 - 2024. All rights reserved.