【问题标题】:How to see the DOM generated by javascript using htmlunit?如何使用 htmlunit 查看 javascript 生成的 DOM?
【发布时间】:2019-10-11 12:35:39
【问题描述】:

我有一个 html 页面,其中 UI 是使用 javascript 生成的。我对使用开发人员工具检查页面时可见但在 html 源代码中不可见的表单感兴趣。 在 htmlunit 中,我尝试等待 javascript 执行,然后将其打印为 Xml,但看不到 DOM 元素!!我该怎么做??请帮助

【问题讨论】:

  • 很确定这与 Java 无关,但可能与 Javascript 无关。
  • @MostyMostacho 不,它没有。我得到的是 Javascript 代码而不是生成的 html,这正是我的问题
  • @MostyMostacho Javascript 在网站加载后不会更改内容,它们会使用 Javascript 生成一些表单并将内容发送到服务器进行验证
  • 在你的问题中你说UI is generated using javascript。在您的评论中,您说的是相反的:Javascript doesn't change the content once the site is loaded。稍后在您的评论中,您再次说出原始声明:they generate some forms using Javascript。我不知道该怎么想。无论如何,链接的问题应该包含您需要的所有信息

标签: javascript html dom htmlunit


【解决方案1】:

HtmlPage.getDocumentElement().asXml()

这可以使用测试

System.out.println(page.getDocumentElement().asXml());

<html>
<body>
<div id="lj">
</div>
<script>
document.getElementById("lj").innerHTML = "Foo";
</script>
</body>
</html>

会显示

<div id="lj">
Foo
</div>

【讨论】:

    猜你喜欢
    • 2011-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-08
    • 2017-01-07
    • 2015-02-25
    • 1970-01-01
    • 2014-02-21
    相关资源
    最近更新 更多