简体   繁体   English

C#在webBrowser中查找并显示html元素

[英]C# Find and show html element in webBrowser

I have this html document:我有这个 html 文档:

<div class="link1">
<a href="#">link1</a>
</div>

<div class="link2">
<a href="#">link2</a>
</div>

<div class="link3">
<a href="#">link3</a>
</div>

<div class="link3">
<a href="#">link4</a>
</div>

<div class="link5">
<a href="#">link4</a>
</div>

I want to show elements that specified with "link3" in webBrowser control by getting element by class name.我想通过按类名获取元素来显示在 webBrowser 控件中用“link3”指定的元素。

This code works, but if we have two elements by same class name it show nothing!这段代码有效,但如果我们有两个类名相同的元素,它什么也不显示!

        foreach (HtmlElement elm in webBrowser1.Document.All)
        if (elm.GetAttribute("className") == "link3")
        {
            HtmlDocument doc = webBrowser1.Document;
            doc.Body.InnerHtml = elm.InnerHtml;
        }

Use this instead:改用这个:

StringBuilder sb=new StringBuilder();
foreach (HtmlElement elm in webBrowser1.Document.All)
    if (elm.GetAttribute("className") == "link3")
        sb.Append(elm.InnerHtml);
HtmlDocument doc = webBrowser1.Document;
doc.Body.InnerHtml=sb.ToString();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM