2014-10-11 133 views
0

我想教自己C#我正在工作的程序有一个浏览器附加到它。我一直在试图弄清楚如何通过标签名来点击按钮,但我似乎无法得到它。我搜索了这个网站,发现了很多有用的主题,但还没有帮助解决这个问题。C#点击标签

<a class="some_class" style="letter-spacing: -1px" href="/someurl" data-executing="0">displaybuttontext</a> 

这是我的按钮我想让程序点击。但不能得到它。以下是我已经尝试了几种方法:

 private void test1_CheckedChanged_1(object sender, EventArgs e) 
    { 
     web.Document.GetElementsByTagName("class").GetAttribute("href").invokemember("click"); 
    }  

这种方法并没有把它扔到了一个的getAttribute错误,我又试图:

moco.Document.GetElementById("a").InvokeMember("click");  

这并不表明一个错误,但也没有按点击按钮(displaybuttontext)。有人可以善举展示一个例子并解释它。请记住,我是新手。

回答

1

比方说,你有这样的HTML页面上:

<a id="link-id" href="linktosomewhere.html">click here</a> 

你会想打电话:

Document.GetElementById("link-id").InvokeMember("click"); 

这是因为链接元素具有属性ID =“链接ID” 。

您可以在这篇文章中,你传递给的getElementById参数必须是要获取的元素的ID中所看到的:http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementbyid(v=vs.110).aspx

+0

它并不显示一个ID,它显示了一个类..我已经试过这种方法。但是,无论如何感谢 – user3674312 2014-10-11 02:24:52

+0

你可以添加一个ID吗?查看这里的解决方案,它遍历所有的元素,并找到匹配的类:http://stackoverflow.com/questions/8461932/how-to-getelement-by-class – 2014-10-11 02:30:31

+0

不,我不能添加一个身份证,因为它必须来自,displaybuttontext我会发现它只是一直到最后都是谢谢。 – user3674312 2014-10-11 02:55:51