在C#winform应用程序中,我尝试检查innerText
的{{1}}是否为空格。
HtmlElement
String.IsNullOrWhiteSpace(elem.InnerText)
是:
elem.OuterHtml
<div class="ad-container toplb">
<span class="leader-board">
<div id="div-gpt-ad-1409955032897-3">
<script type="text/javascript">
PbhAdUnit.cmd_push(function() {pbh_ad_units['div-gpt-ad-1409955032897-3'].display(); });
</script>
</div>
</span>
</div
innerText
我希望 PbhAdUnit.cmd_push(function() {pbh_ad_units['div-gpt-ad-1409955032897-3'].display(); });
忽略脚本,如果元素内没有可读文本(页面上显示的文本),则返回空。无论如何,我怎么能忽略这些元素?
答案 0 :(得分:2)
您可以使用InnerText
属性找到元素的内部文本。它返回所有内部文本删除标记。
示例代码:
private void Form1_Load(object sender, EventArgs e)
{
this.webBrowser1.Navigate(@"d:\sample.html");
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
var div = this.webBrowser1.Document.GetElementById("div1");
MessageBox.Show(string.Format("'{0}'", div.InnerText), "InnerText");
MessageBox.Show(string.Format("'{0}'", div.InnerHtml), "InnerHtml");
}
示例内容:
使用以下内容创建sample.html
文件。
<html>
<head><title>Title</title></head>
<body>
<div id="div1"><script type="text/javascript">alert('Hi');</script><input type="text"/></div>
</body>
</html>
<强>结果:强>
我将''
放在内部文本和内部html: