首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从WebKit.Net中的元素中获取html

如何从WebKit.Net中的元素中获取html
EN

Stack Overflow用户
提问于 2013-07-17 22:13:34
回答 1查看 2.4K关注 0票数 4

我正在将一个旧项目迁移到WebKit.NET 0.5 Cairo。我已经通过了大多数障碍,但我不知道如何为单个WebKit.DOM.Element对象获取HTML。

我可以使用WebKitBrowser.DocumentText读取整个文档的HTML,但这不是我所需要的。

下面基本上是我想要完成的。我浏览了所有的文档,做了大量的搜索,在所有的战线上都是空的。我没有办法完成片段中的最后一行。

代码语言:javascript
复制
WebKit.DOM.Element newdiv = webKitBrowser1.Document.CreateElement("DIV");
...
[ Create some SPAN's and append them to newdiv ]
...
String divHTML = newdiv.DocumentText // <-- DocumentText is not a member of WebKit.DOM.Element

使用IE控件,我可以只执行divHTML = newdiv.InnerHTML,但找不到与WebKit.NET等效的东西。

作为另一种选择,我将接受将HTML注入元素的解决方案,这样我就可以手动添加IMG标记,而无需专门为它创建DOM元素。使用divHTML.TextContent,html被解释为纯文本。

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-20 16:26:23

五年后,既然我可以回答我自己的问题,我将正式回答这个问题,因为它已经坐了那么久,被标记为一个受欢迎的问题。

试验和错误最终导致了一个不太理想但功能较好的解决方案,其形式是

代码语言:javascript
复制
WebKit.DOM.Element newdiv = webKitBrowser1.Document.CreateElement("DIV");
...
[ Create some SPAN's and append them to newdiv ]
...
String divHTML = webKitBrowser1.StringByEvaluatingJavaScriptFromString("document.getElementById('DivElementID').innerHTML");

然后也可以使用相同的方法来设置元素的innerHTML。

这也解决了一个未提及的问题,即WebKitBrowser.DocumentText只反映原始的HTML,而不反映任何修改的结果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17711194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档