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

本文关键字:显示 html 元素 查找 webBrowser | 更新日期: 2023-09-27 18:19:34

我有这个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>

我想通过按类名获取元素来显示在webBrowser控件中用"link3"指定的元素。

这段代码是有效的,但如果我们有两个相同类名的元素,它就什么都不显示!

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

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

改为使用这个:

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();