使用JavaScript将大量html内容插入到文档中

时间:2009-11-24 05:20:36

标签: javascript dom

我有很多HTML内容需要使用JavaScript插入到文档中。最好的方法是什么?我不希望它在源代码中逐行分解,而不是所有字母串在一起。

4 个答案:

答案 0 :(得分:1)

让您的Javascript代码向Web服务器发出包含该脚本的文件的AJAX请求。当AJAX请求返回时,将回复的内容写入文档上的InnerHTML成员(或应包含文本的文档子)。

This page给出了一个确切想要做的工作示例 - 只需用包含您要包含的内容的静态文件替换CGI。

答案 1 :(得分:0)

最好的办法就是不这样做。

将它们放在静态html文件中,然后链接它。

答案 2 :(得分:0)

使用可以使用jquery。例如:

如果您的ID为ID =“补充工具栏”。使用jquery加载html内容:

$(“#Sidebar”)。HTML(“无论什么HTML内容”);

http://docs.jquery.com/Attributes/html

您可以使用jQuery AJAX方法异步获取内容,然后使用上面的方法将其加载到html中。

http://docs.jquery.com/Ajax

答案 3 :(得分:0)

您可以使用iframe加载html并使用JS在主页中加入它。

此页面(main.html)......

<html>
<head>
    <title>Main</title>
</head>
<body>
    <iframe id="loader" style="display:none"></iframe>
    <div id="target"></div>
    <script>
        function read(b){
            document.getElementById('target').innerHTML = b.innerHTML;
        };
        var ifr = document.getElementById('loader');
        ifr.src = 'testIfrLoad.html#read';
    </script>
</body>
</html>

...加载此内容(testIfrLoad.html):

<html>
<head>
    <title>testIfrLoad</title>
    <script>
        function send(){
            top[window.location.hash.substr(1)](document.body);
        }
    </script>
</head>
<body onload="send()">
    <p>Some content</p>
    <p>Some content</p>
    <p>Some content</p>
</body>
</html>