2011-03-29 171 views
1

我正在为我的web应用程序编写测试框架。这种情况是为了测试一些AJAX方法。虽然存在一些服务器端错误,但AJAX调用的响应是HTML文档日志。不过,我希望在收到响应的同时在相同的测试页面中显示HTML文档。恐怕我不能将HTML文档插入到div中,因为它不是html代码片段,而是一个完整的HTML文档。无论如何在没有服务器端努力的情况下处理这个问题?如何将动态生成的HTML文档嵌入到HTML文档中?

此外,我已经考虑过关于iframe。但是,它似乎只能通过指定url来显示网页。

在此先感谢!

编辑

我测试亚伦的第二个解决方案。令我感到惊讶的是,我可以将完整的HTML文档插入HTML文档并保留其样式。

回答

0

你有两个选择:

  1. 创建iframe和HTML文档加载到其中
  2. 还是以结果来定位的body元素,只是该元素的内容添加到div旁边的测试用例。

第一个问题可能会导致Cross Site Scripting问题(您可能会或可能不会适用于您的案例)。第二个意思是你必须将结果的样式合并到你的测试HTML文档中,否则它不会像你想要的那样。

+0

嗨,谢谢你的回复。你能详细解释如何把html文档放在iframe中吗?由于HTML文档是即时创建的,因此它没有相应的url,我如何将它放入iframe中。我试过在Chrome中尝试iframeElt.innerHTML = responseHTML。但它没有奏效。 – 2011-03-29 08:25:37

+0

您可以使用iframeElt.contentWindow.document找到文档。我试图找到一个例子,如何取代整个内容,但似乎有点困难。尝试去除字符串周围的'html'标记并将其写入文档: - / – 2011-03-29 08:40:01