0

我只是想知道是否有一种更有效的方法可以使用 Javascript 来包含外部 PHP 文件:

<script type="text/javascript" src="widget.php?hash=2&b=NTdhZmI3"></script>

我是这种方法的新手,我不确定使用这种包含是否会遇到并发症。

任何帮助,将不胜感激。谢谢。

编辑:脚本按预期工作,PHP 文件输出为 JS。我只是想看看这是否是好的做法,或者是否有更好的选择。

4

2 回答 2

1

这可行,或者您可以将 AJAX 与 jQuery 一起使用:

$.ajax({
    type: "GET",
    url: "widget.php",
    data: "hash=2&b=NTdhZmI3",
    success: function(response) {
        var script = document.createElement('script');
        script.innerHTML = response;
        document.getElementsByName[0].appendChild(script);
    },

    error: function (e) {
        //error callback code goes here
    }
});
于 2013-06-04T00:53:41.810 回答
1

Javascript 没有任何特定的方法来包含文件。我们必须在服务器端包含它。我认为您在服务器端使用 php,因此使用 include() 或 require() 将您的文件包含在 php 本身中。

但是仍然有 javascript 中的三种方法可以做到这一点。

  1. 脚本标签(你在做什么):脚本标签导入几乎每个文件(文本文件),但输出必须是js可接受的脚本或代码。您也可以包含其他格式。只需将其放在 javascript 变量上并 document.write 即可。喜欢你的文件将包含类似的元素。

    var html='< div class="header"><img src="logo.png"> 更多标题内容</div>'; document.write(html);

  2. Ajax:使用 ajax,您也可以调用任何文件并根据需要操纵其响应。但是对于包含感觉的文件,它是没有用的。最好加载动态内容。以一个你想包含头文件的场景为例,你现在用 ajax 做了什么,你的 body 会首先加载,然后它会显示 header(因为 ajax 是异步的),这看起来太糟糕了。

  3. iFrames :iframes 是包含文件的最简单方法。但由于链接问题、损坏的 html、操纵数据等、缓存问题等许多问题,它们很丑陋并且不应该被认为是不应该的。

于 2013-06-04T02:09:39.487 回答