Html 不显示从下拉列表中选择的表单帖子
我的任务是自动填写web表单。我可以打开表格,可以从下拉列表中选择选项,并可以填写表格。下拉列表具有多个选项,并根据下拉列表中的选择显示表单。我可以通过VBA编码从下拉列表中选择选项,但窗体未展开。虽然它是通过从下拉菜单中选择鼠标来扩展的 我已经编写了以下代码:Html 不显示从下拉列表中选择的表单帖子,html,vba,web,screen-scraping,Html,Vba,Web,Screen Scraping,我的任务是自动填写web表单。我可以打开表格,可以从下拉列表中选择选项,并可以填写表格。下拉列表具有多个选项,并根据下拉列表中的选择显示表单。我可以通过VBA编码从下拉列表中选择选项,但窗体未展开。虽然它是通过从下拉菜单中选择鼠标来扩展的 我已经编写了以下代码: Sub FilltheForm1() Dim IE As SHDocVw.InternetExplorer Dim IE2 As SHDocVw.InternetExplorer Set IE = New InternetExplo
Sub FilltheForm1()
Dim IE As SHDocVw.InternetExplorer
Dim IE2 As SHDocVw.InternetExplorer
Set IE = New InternetExplorer
Set IE2 = New InternetExplorer
IE.Visible = True
IE.navigate "My URL"
Do While IE.readyState <> READYSTATE_COMPLETE
Loop
Dim Doc As MSHTML.HTMLDocument
Set Doc = IE.document
Doc.getElementsByTagName("select").Item("userType").Value = "SERVICE_PROVIDER"
Doc.getElementsByTagName("Input").Item("firstName").Value = "A"
Doc.getElementsByTagName("Input").Item("middleInitial").Value = "A"
Doc.getElementsByTagName("Input").Item("lastName").Value = "A"
Doc.getElementsByTagName("select").Item("company").Value = "HCL"
Doc.getElementsByTagName("Input").Item("companyEmail").Value = "A"
Doc.getElementsByTagName("Input").Item("address").Value = "A"
Doc.getElementsByTagName("Input").Item("city").Value = "A"
Doc.getElementsByTagName("Input").Item("stateProvince").Value = "A"
Doc.getElementsByTagName("Input").Item("zipPostalCode").Value = "A"
Doc.getElementsByTagName("select").Item("country").Value = "INDIA"
Doc.getElementsByTagName("Input").Item("phone").Value = "A"
Doc.getElementsByTagName("textarea").Item("reasonForRequestingAccess").Value = "A"
End Sub
子填充格式m1()
Dim IE作为SHDocVw.InternetExplorer
作为SHDocVw.InternetExplorer的Dim IE2
Set IE=新的InternetExplorer
Set IE2=新的InternetExplorer
可见=真实
浏览“我的URL”
在IE.readyState readyState\u完成时执行此操作
环
Dim Doc作为MSHTML.HTMLDocument
Set Doc=IE.document
Doc.getElementsByTagName(“选择”).Item(“用户类型”).Value=“服务提供者”
Doc.getElementsByTagName(“输入”).Item(“名字”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“初始值”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“姓氏”).Value=“A”
Doc.getElementsByTagName(“选择”).Item(“公司”).Value=“HCL”
Doc.getElementsByTagName(“输入”).Item(“公司邮件”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“地址”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“城市”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“stateProvince”).Value=“A”
Doc.getElementsByTagName(“输入”).Item(“zipPostalCode”).Value=“A”
Doc.getElementsByTagName(“选择”).Item(“国家”).Value=“印度”
Doc.getElementsByTagName(“输入”).Item(“电话”).Value=“A”
Doc.getElementsByTagName(“textarea”).Item(“请求访问的原因”).Value=“A”
端接头
网页表单的HTML代码:
<tr>
<td class="textAlignRight">
<p class="pBold">User Type:<sup>*</sup></p></td>
<td colspan="2" align="left"> <select name='userType' class="selectDropDown" onChange=refreshPage()>
<option value= 'PLEASE SELECT USER TYPE' selected ="selected">
用户类型:*
您可能需要触发OnChange事件来模拟用户交互
ie.document.querySelector("[name='userType']").FireEvent "onchange"
哪个选择失败了?请尝试ie.document.querySelector(“[name='userType']”)。FireEvent“onchange”否。请问什么是不工作?是否有错误消息或根本没有发生任何事情?感谢您的解决方案。现在我根据你上面的代码选择了表格。如果我把答案贴在答案上,你可以考虑接受。看看这是如何以及为什么有用的: