调用webbrowser元素中的单击

时间:2015-07-03 01:32:10

标签: html vb.net webbrowser-control

我的VB .net格式中有一个webbrowser控件(名称:WB)。

我在webbrowser中加载了一个网页。这是示例html:

enter code here
<script type="text/javascript">
Sys.WebForms.PageRequestManager._initialize      
('ctl00$ContentPlaceHolder1$ScriptManager1', 'form1', 
['tctl00$ContentPlaceHolder1$UpdatePanel1',   
'ContentPlaceHolder1_UpdatePanel1'], [], [], 90, 'ctl00');
</script>


<div class="row">
<div class="control group alternating">
<h2>Results</h2>
   <div id="ContentPlaceHolder1_UpdatePanel1">

                        <div class="row">
<a  id="ContentPlaceHolder1_Repeater1_LinkButton1_0" 
href="javascript:__doPostBack(&#39;
ctl00$ContentPlaceHolder1$Repeater1$ctl00$LinkButton1&#39;,&#39;&#39;)">
<strong>A. Bleakley Chandler, MD</strong></a><br />
                            Georgia Medical College<br />Augusta, GA, USA
                        </div>

                        <div class="row">
<a id="ContentPlaceHolder1_Repeater1_LinkButton1_1" 
href="javascript:__doPostBack(&#39;  
ctl00$ContentPlaceHolder1$Repeater1$ctl01$LinkButton1&#39;,&#39;&#39;)">
<strong>A. Kyle Mack, MD</strong></a><br />
Ann and Robert H. Lurie Children's Hospital of Chicago<br />
                        </div>

                        <div class="row">
<a id="ContentPlaceHolder1_Repeater1_LinkButton1_2" 
href="javascript:__doPostBack(&#39;  
ctl00$ContentPlaceHolder1$Repeater1$ctl02$LinkButton1&#39;,&#39;&#39;)">
<strong>A. Lawrence Ossias, MD</strong></a><br />
                            Mount Sinai NYC<br />
</div>

<div class="row no-shading">
     <div class="pagination-arrows right">
                        <span>
    1 of 100</span>
<a id="ctl00_ContentPlaceHolder1_Repeater1Prev" class="aspNetDisabled ir 
prev">prev</a>
<a id="ctl00_ContentPlaceHolder1_Repeater1Next" class="ir next" 
href="javascript:__doPostBack(&#39;
ctl00$ContentPlaceHolder1$Repeater1Next&#39;,&#39;&#39;)">next</a>
</div>
</div>
</div>

现在我想点击Repeater控件的第一个元素。我的InvokeMember代码:

Dim pLink As HtmlElement =  WB.Document.GetElementById
("ContentPlaceHolder1_Repeater1_LinkButton1_0")
pLink.InvokeMember("click") 'doesn't work

但由于某些未知原因,此转发器控件内的点击不会触发。页面中的其他链接可以正常使用“invokemember(”click“)” 如下所示:

Dim pLink As HtmlElement =  WB.Document.GetElementById
("ctl00_ContentPlaceHolder1_Repeater1Next")
pLink.InvokeMember("click") 'Works fine..

我试过GeckoFx浏览器控件(geckoanchorelement.click),这没用。我也尝试通过postmessage api发送MouseClick - 这也失败了。

0 个答案:

没有答案