一尘不染

如何使用jQuery替换整个HTML节点

javascript

我有一个看起来像的字符串:

<html><head><title>example</title></head><body>some example text</body></html>

我得到此字符串作为结果返回给AJAX请求。

我希望浏览器呈现并显示该字符串。这个想法是做这样的事情:

$('html').parent().html(myString);

好吧,那是行不通的。我尝试使用IFRAME,但是我也没有弄清楚如何使它工作。

注意: 我无法更改此字符串。我也无法在随后的服务器调用中重新生成此字符串(否则我可以将浏览器重定向到该URL)。


阅读 744

收藏
2020-05-01

共1个答案

一尘不染

document.open/write/close方法将执行您想要的操作:

var newDoc = document.open("text/html", "replace");
newDoc.write(myString);
newDoc.close();

除非您传递replace参数,否则document.open调用将添加页面历史记录。因此,用户必须单击两次以退回到上一页。

2020-05-01