【问题标题】:Javascript - Dynamically load a fragment of HTML and run scriptJavascript - 动态加载 HTML 片段并运行脚本
【发布时间】:2011-06-14 03:19:50
【问题描述】:

我正在构建一个网页,我想重新使用我网站上其他地方的一些 HTML。我正在构建的页面 (index.html) 可以使用 XMLHttpRequest 动态获取和插入我想要的 HTML (existing.html)。但是,我想要获取的 HTML 由一些 JavaScript 填充。当我将它加载到我的新页面时,该 Javascript 没有被执行:

index.html:

<html>

    <head>
        <script type = "text/javascript">
            ... //use XMLHttpRequest to load existing.html
            initExistingHTML(); //this is function which populates loaded HTML, is not executed
        </script>
    </head>    

<html>

现有的.html:

<div>
    <script type = "text/javascript">
        function initExistingHTML() {
           ... // do some stuff
        }
    </script>
</div>

如何加载existing.html 并运行填充它的脚本?

【问题讨论】:

    标签: javascript init


    【解决方案1】:

    页面加载后,通过innerHTML 添加existing.html。与其调用它的函数,不如让existing.html 的代码执行,这将与onload 部分中的代码相同。

    编辑:或者,您可以更正您的错字。 initExistingHTML != initExistingHtml。 哈哈

    【讨论】:

    • 这就是我以为我在做的事情,你能提供一个如何实现这一目标的例子吗?
    • 这很容易,伙计。只需将您在 initExistingHTML 中的代码裸放在脚本标记中即可。另外,你的情况不一样!
    • 抱歉,大小写错误(现已更正)是由于我输入了一个有代表性的示例,现在复制/粘贴了实际代码。我不想复制代码,因为会产生重复。
    • 哦,好的。所以你的真实代码是正确的。好吧,当你想插入一些东西时,听我的建议并使用裸代码而不是函数。您无法知道代码何时初始化,因此无法调用该函数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-08
    • 1970-01-01
    • 1970-01-01
    • 2011-03-16
    • 2011-07-23
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多