我想在我的html页面上显示另一个html页面,生成html页面。所以我没有它的src,只有内容。它有doctype,head,body,所有东西。所以我决定使用iframe。问题是我无法将整个文本分配给变量,因为我得到错误,有一个不受支持的字符,如“<”等。如何处理?
我正在尝试做这样的事情:
window.onload = function() {
var iframeDocument = document.getElementById("myIframe").contentDocument;
var ss = "
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
</head>
<body>
</body>
</html>";
iframeDocument.write(ss);
iframeDocument.close();
}
所以我的问题是如何逃避该文本,以免它导致浏览器错误? 另外html内容是动态生成的,所以在我的代码中没有那个文本,还有struts动作变量。但是在我的代码gots在浏览器中执行之后,这就是我在那里看到的。
答案 0 :(得分:1)
最简单解决此问题的方法是创建一个新的aspx页面,在iframe
中创建所需的html,并将iframe
的src设置为aspx页面(或php,取决于你使用的是什么)。
因此,假设您创建了一个名为Frame.aspx
的新aspx页面。然后,将<iframe src="Frame.aspx?SomeParameter=SomeValue" />
添加到父窗口。
这是一种更好的方法,更易于维护。此外,它还会阻止iFrame内容两次(一次在您的javascript变量中,一次作为iframe的内容)。