有没有办法告诉WebBrowser组件C#不要修改原始HTML?

有没有办法告诉WebBrowser组件C#不要修改原始HTML?,c#,html,tags,browser,C#,Html,Tags,Browser,我注意到Web浏览器组件使用的Internet Explorer修改了原始源代码。我不理解,由于ajax请求和其他原因,某些代码必须更改。当我声明html被修改时,我指的是那些插入的标记,即使它们不在实际的源代码中。例如,IE在不存在时完成“body”标记,在表没有时完成“tbody”标记。有没有办法保持文档的原始结构 如果你不明白这个问题,请告诉我,谢谢。我不得不做出一些假设,但我的理论是: 你看到的不是IE改变HTML。我不知道你是怎么看的,但这是IE序列化它的DOM树。当然,IE必须关闭b

我注意到Web浏览器组件使用的Internet Explorer修改了原始源代码。我不理解,由于ajax请求和其他原因,某些代码必须更改。当我声明html被修改时,我指的是那些插入的标记,即使它们不在实际的源代码中。例如,IE在不存在时完成“body”标记,在表没有时完成“tbody”标记。有没有办法保持文档的原始结构


如果你不明白这个问题,请告诉我,谢谢。

我不得不做出一些假设,但我的理论是:


你看到的不是IE改变HTML。我不知道你是怎么看的,但这是IE序列化它的DOM树。当然,IE必须关闭body标记(或者创建body DOM元素,如果我们必须精确的话)才能呈现某些东西。序列化的DOM与原始HTML不同,如果要提取原始HTML,可能没有使用正确的工具。这种行为有时会出现在WSIYWYG编辑器中以及在IE中使用“保存页面”时。它只是将其内部DOM树转储回字符串中,并且在DOM树中没有不完整的元素,因为它们是树节点而不是标记。

我告诉您,我不明白这个问题。您需要使用WebBrowser组件吗?您是否可以使用WebClient发出http请求?我认为这样就不会修改响应。如果您需要原始的serever响应,您可以使用HttpWebRequest查询服务器,并获得原始的、经过修改的HttpWebResponse。Darin Dimitrov,基本上WebBrowser在加载html DOM时会修改它。David Diaz和JotaBe,我必须使用WebBrowser,因为我还必须处理AJAX和其他一些原因。+1:是的,我想说他也在看DOM,基于他所发布的内容。是的,我在看DOM,因为这是我需要做的。所以答案是,在序列化文档时,无法告诉资源管理器添加额外的节点?这些节点位于IE DOM中。IE就是这样看待您提供的HTML的。它没有添加元素,只是隐式地看到它们。我怀疑有什么方法可以说明这一点,但我又不是专家。也许你可以使用HTML敏捷包来处理HTML而不是IE DOM?我需要用浏览器来处理。