嗨,我是excel VBA编码的新手,试图根据excel的输入导航网站并执行一些活动。在这里,我很想将值传递给输入元素,该输入元素会根据我们传递的值在下一个文本框中自动填充值(例如:如果我在目标框中传递了邮政编码,则城市名称将在下一个框中自动填充)传递值,但不会触发自动填充值的JS。
网页中的目标框代码
<input name="zipcode" class="inputBoxRequired" id="zipcode" onkeypress="return isNumberKey(event)" onblur="getZipCity(this.value,'/ProviderPortal')" type="text" size="46" maxlength="5">
代码已尝试
Set Zip = ie_Doc.getElementById("zipcode")
Zip.Value = Zip_Code 'Here value gets updated but associated js is not triggered
ie_Doc.getElementById("zipcode").Focus
甚至尝试过火灾事件
Zip.FireEvent ("onchange")
在网页中它被称为Onkeypress事件,我用谷歌搜索找到了解决方案,但我无法找到确切的解决方案,所以请帮助我。
感谢您的支持
答案 0 :(得分:4)
Zip.FireEvent ("onkeypress")
Zip.FireEvent ("onblur") '<== Apparently this did the trick
这些是显示的事件。
答案 1 :(得分:1)
我遇到了相同的情况,用于解决方案验证了这篇文章,而就我而言,我没有“ onblur”标签,因此我进行了一些搜索并提出了解决方案。
Dim event_onChange As Object
Set event_onChange = ie_Doc.createEvent("HTMLEvents")
event_onChange.initEvent "keypress", True, False
Zip.dispatchEvent event_onChange
它将帮助其他面临相同问题的人。