Javascript 内部的Html代码<;预处理>;标记,innerHTML不会返回所有代码

Javascript 内部的Html代码<;预处理>;标记,innerHTML不会返回所有代码,javascript,jquery,html,innerhtml,Javascript,Jquery,Html,Innerhtml,我希望所有代码都包含在pre标记中,但innerHTML或jquery:html()不会返回所有代码。有些东西被切断了。 如doctype和头体标签等 <pre id="pre"> <!DOCTYPE html> <html > <head></head> <body> <div>asdfds</div>

我希望所有代码都包含在pre标记中,但innerHTML或jquery:html()不会返回所有代码。有些东西被切断了。 如doctype和头体标签等

<pre id="pre">
    <!DOCTYPE html>
    <html >
        <head></head>
        <body>    
            <div>asdfds</div>
        </body>    
    </html>
</pre>

asdfds
当我向innerHTML通知#pre对象时 它只会提醒div

是否有其他解决方法?

替换为
,这样您就可以根据需要获得它,而不是无效的html

<pre id="pre">
&lt;!DOCTYPE html&gt;
    &lt;html &gt;
        &lt;head&gt;&lt;/head&gt;
        &lt;body&gt;    
            &lt;div&gt;asdfds&lt;/div&gt;
        &lt;/body&gt;    
    &lt;/html&gt;
</pre>

!DOCTYPE html
html
人头
身体
divasdfds/div
/身体
/html
替换为
,这样您就可以根据需要获得它,而不是无效的html

<pre id="pre">
&lt;!DOCTYPE html&gt;
    &lt;html &gt;
        &lt;head&gt;&lt;/head&gt;
        &lt;body&gt;    
            &lt;div&gt;asdfds&lt;/div&gt;
        &lt;/body&gt;    
    &lt;/html&gt;
</pre>

!DOCTYPE html
html
人头
身体
divasdfds/div
/身体
/html

如果您真的想这样做,请使用脚本

<script id="pre" type="text/template">
<!DOCTYPE html>
<html >
    <head></head>
    <body>    
        <div>asdfds</div>
    </body>    
</html>
</script>

$('#pre').text();

asdfds
$('#pre').text();

如果您真的想这样做,请使用脚本

<script id="pre" type="text/template">
<!DOCTYPE html>
<html >
    <head></head>
    <body>    
        <div>asdfds</div>
    </body>    
</html>
</script>

$('#pre').text();

asdfds
$('#pre').text();

您的
HTML
标记无效。通过使其有效,它可以工作(显示所有内容):@MelanciaUK我认为OP希望在屏幕上显示HTML代码。在这种情况下,JSFIDLE不起作用。如果您分别使用
对特殊HTML字符进行编码,我相信它会产生所需的输出。您的
HTML
标记无效。通过使其有效,它可以工作(显示所有内容):@MelanciaUK我认为OP希望在屏幕上显示HTML代码。在这种情况下,JSFIDLE不起作用。如果您分别使用
对特殊HTML字符进行编码,我相信它会产生所需的输出。仅供参考,一旦IE上船,您就可以使用新元素进行此操作。:)仅供参考,一旦IE上船,您就可以使用新元素进行此操作。:)