点击带有班级名称的按钮,我需要帮助。 我想点击下面的这个按钮。
<a href="https://www.supremenewyork.com/checkout" class="button checkout">checkout now</a>
我试过了,但按钮没有点击。
HtmlElementCollection classButton = webBrowser1.Document.All;
foreach (HtmlElement element in classButton)
{
if (element.GetAttribute("button checkout") == "button")
{
element.InvokeMember("click");
}
}
答案 0 :(得分:2)
您正在寻找名为&#34;按钮结帐&#34;的属性而不是上课。您应该使用.Contains,所以如果有几个类,那么它不会错过它们:
HtmlElementCollection classButton = webBrowser1.Document.All;
foreach (HtmlElement element in classButton)
{
if (element.GetAttribute("class").Contains("button"))
{
element.InvokeMember("click");
}
}
如果你想确保找到&#34;按钮&#34;而不是像#34; redbutton&#34;然后改为:
HtmlElementCollection classButton = webBrowser1.Document.All;
foreach (HtmlElement element in classButton)
{
if (Regex.IsMatch(element.GetAttribute("class"), @"\bbutton\b"))
{
element.InvokeMember("click");
}
}
你也可以使用LINQ简化:
webBrowser1.Document.All.Where(
element => element.GetAttribute("class").Contains("button"))/*OR regex in example 2*/
.ToList().ForEach(element => element.InvokeMember("click"))