我目前正在VB.NET中使用内置的WebBrowser控件来填写网页上的表单。表单有一个必需的文本字段,特别是导致我麻烦。文本字段用于接受4位数年份,然后对其进行验证,以确保输入的值格式正确。
我能够以编程方式在文本字段中输入一年就好了。但是,表格之后从不验证该字段,因此不允许提交表单。我知道表单本身是有效的,因为我可以填写它并手动提交它。
根据Internet Explorer中的开发人员工具,我在该字段中看到的唯一事件是"更改"。通常情况下,我会使用下面的行来解雇"更改"在VB.NET中的事件,但我得到一个异常,表明更改事件不存在:
fMain.w1.Document.GetElementById("Sections[0].Year").RaiseEvent("change")
文本字段本身的代码如下所示。
<input name="Sections[0].Year" tabindex="1" title="Year" class="required number digits numbers-only bind-x" style="width: 50px;" type="text" value="1924" data-metadata="{'validate':{'required':true,'number':true,'dynamic':['range',$abc.building_edit.yearRange],'digits':true,'messages':{'dynamic':$.validator.messages.range}}}" data-sectionnum="1" value="1924"></input>
我对Javascript并不熟悉所以我不知道我是否在寻找合适的地方,或者我是否提供了足够的信息供您帮助,但是您可以给予的信息至少让我走上正确的轨道非常感谢。
答案 0 :(得分:0)
您可以尝试使用onchange
事件名称:
fMain.w1.Document.GetElementById("Sections[0].Year").RaiseEvent("onchange")