Ajax和外部JS脚本

时间:2013-12-11 00:10:58

标签: javascript php jquery html ajax

当我动态加载php页面时,链接到PHP页面的外部JS文件似乎没有生效。知道HTML文件中的JS代码来调用函数,JS文件通过修改某些标记来完成所有工作。

HTML页面将加载链接到JS脚本的PHP文件。相关代码如下。

如果直接加载,这确实有效,而不是在动态加载时我在过去遇到类似的问题,解决方案是在加载内容时使用回调功能但是因为所有的JS都在外部文件中确定最好的方法。

加载PHP文件的HTML代码

<script>
   $(document).ready (function() {
      $('#test').click(function(event) {
        $('#content').empty();
        $('#content').load('view/search.php');
      })
    })
</script>

如何将JS链接到PHP文件

       <script type="text/javascript" src="edit.js"></script>

在直接加载PHP页面时,所有代码都可以正常工作。

非常感谢

3 个答案:

答案 0 :(得分:1)

支持加载包含脚本标记的HTML。但请注意,load只会将您的内容插入DOM。因此,如果您插入<script src="edit.js"></script>,DOM将尝试从当前目录加载edit.js,而不是从您正在加载的php文件的目录中加载。{/ p >

答案 1 :(得分:0)

使php文件在脚本标记中输出edit.js的内容

e.g。

<script>
   <?php
      echo file_get_contents('edit.js');
   ?>
</script>

答案 2 :(得分:0)

如果我理解你的问题,这对我有用。然后在单击时加载js文件。这种方法的缺点是,如果多次单击它,文件将每次加载,使DOM混乱,这可能导致网站速度变慢。

<script>
   $(document).ready (function() {
      $('#test').click(function(event) {
        $('#content').empty();
        $('#content').load('view/search.php', function() {
               $.getScript(path+to+script);
        });
      })
    })
</script>