永发信息网

C# .NET WebBrowser.Document GetElementById获取不到指定ID

答案:3  悬赏:40  手机版
解决时间 2021-03-02 02:14
  • 提问者网友:末路
  • 2021-03-01 20:36
1、首先我是 WebBrowser 默认加载了一个页面比如百度
然后点击一个按钮:
var htmlDocument = webBrowser.Document;
if (htmlDocument == null) return null;
htmlDocument = htmlDocument.OpenNew(true);
htmlDocument.Write(html);
var newHtmlDocument = webBrowser.Document;
if (newHtmlDocument == null) return null;
最后用:
var speclist10 = newHtmlDocument.GetElementById("speclist10");
获取不到Id为 speclist10 的HtmlElement
我可以肯定 html 中包含 Id为speclist10的div
最佳答案
  • 五星知识达人网友:愁杀梦里人
  • 2021-03-01 22:03
在webBrowser的DocumentCompleted事件中写。
获取不到的核心原因是页面还未加载完。违反了页面加载生命周期原理。
全部回答
  • 1楼网友:归鹤鸣
  • 2021-03-01 23:30
由于class是javascript的保留关键字,所以在ie中用classname代替class foreach (htmlelement he in web_bs.document.getelementsbytagname(“div“)) { rtb_html.text = he.getattribute(“classname“); if (rtb_html.text==“aaintext“) { rtb_txt.text = he.innerhtml; } }
  • 2楼网友:青灯有味
  • 2021-03-01 22:46
JavaScript Document function show(str) { var str1="td"+str; var str="show"+str; for (var i=1; i<18; i++) { var obj = document.getElementById('show' + i.toString()); if (obj) obj.style.display = 'none'; } document.getElementById(str).style.display="block"; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯