我的iframe一直显示代码注入为一串文本,而不是渲染

时间:2014-02-27 12:06:08

标签: javascript jquery

由于某些原因,我有它所以div将包含我想要加载iframe的代码:

<div id="MyDiv">
<html>
<head>
</head>
<body>
<h1>Hi</h1>
</body>
</html>
</div>
<iframe id="MyFrame"></iframe>

我的Javascript获取上面div中的文本(代码):

var DCode = document.getElementById("MyDiv").innerHTML;

我的Jquery将代码添加到我的iframe:

$('#MyFrame').contents().find('html').append(DCode);

当我在iframe中查看文档时,我看到div里面的html,但是用双引号括起来并且在正文中。如何将其显示为页面?

我在使用警告框显示代码时意识到“&lt;”显示为转义字符:&amp; l t;

2 个答案:

答案 0 :(得分:0)

很少有事情要考虑 -

1)MyDiv中的内容 - <head><body>标签开始但不结束。
2)var“DCode”保存innerHTML但jquery附加“DString”..变量不同。
 问这个问题是错字吗?

答案 1 :(得分:0)

我无法重现您的问题。以下代码对我来说很好 -

<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script> 
<script>
    function copy()
    {
    var DCode = document.getElementById("MyDiv").innerHTML;
    $('#MyFrame').contents().find('html').append(DCode);
    }
</script>   
</head>

<body onload="copy();">
<div id="MyDiv">
<html>
<head></head>
<body>
<h1>Hi</h1>
Div body
</body>
</html>
</div>

<iframe id="MyFrame"></iframe>

</body>
</html>