我想将HTML代码嵌入到html页面中。 HTML嵌入代码中的样式会扰乱整个布局,这就是我想使用iframe的原因。问题是没有.html页面可以链接到,因为这个HTML代码是从数据库中提取的。我尝试过类似的东西:
<iframe>${htmlContent} </iframe>
${htmlContent}
包含简单的html内容。
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>
答案 0 :(得分:1)
此答案假设您能够从存储的HTML中删除<html>
和</html>
标记,并且在放入标记时能够HtmlEncode
。
将编码后的HTML存储为div ...
<div id="htmlstore" style="display:none;">{html goes here}</div>
所以它看起来像......
<div id="htmlstore" style="display:none;"><body>This is my text</body></div>
然后使用以下Javsacript,它将“HtmlDecode”(不幸的是没有本机javascript函数),然后放入iframe
<script type="text/javascript">
window.onload = function(){
var html = document.getElementById("htmlstore").innerHTML;
html = html.replace(/</g,"<").replace(/>/g,">");
var frameDoc = document.getElementById("newframe").contentWindow.document;
frameDoc.documentElement.innerHTML = html;
}
</script>