Javascript Ajax和外部JS脚本

Javascript Ajax和外部JS脚本,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,这里有一个问题,当我动态加载一个php页面时,链接到该php页面的外部JS文件似乎没有生效。HTML文件中有用于调用函数的已知JS代码,JS文件通过修改某些标记来完成所有工作 HTML页面将加载链接到JS脚本的PHP文件。相关代码如下 如果直接加载,这是可行的,只是动态加载时不行。我以前也遇到过类似的问题,解决方案是在加载内容时使用回调功能,但是因为所有的JS都在外部文件中,所以不确定最佳方法 加载PHP文件的HTML代码 <script> $(document).ready

这里有一个问题,当我动态加载一个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>

$(文档).ready(函数(){
$(“#测试”)。单击(函数(事件){
$('#content').empty();
$('#content').load('view/search.php');
})
})
JS如何链接到PHP文件中

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

同样,当直接加载PHP页面时,所有代码都有效


非常感谢

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

e、 g


如果我正确理解了你的问题,这对我来说很有效。然后在单击时加载js文件。这种方法的缺点是,如果多次单击该文件,每次都会加载该文件,使DOM变得混乱,从而导致站点运行缓慢

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

$(文档).ready(函数(){
$(“#测试”)。单击(函数(事件){
$('#content').empty();
$('#content').load('view/search.php',function(){
$.getScript(路径+到+脚本);
});
})
})

支持加载包含脚本标记的HTML。但是,请记住,
load
只会将您的内容插入DOM。因此,如果插入了
,DOM将尝试从当前目录加载
edit.js
,而不是从正在加载的
php
文件的目录加载。

您确定
edit.js
的路径正确吗?主机页的URL将用作当前目录,而不是
view/search.php
。另外,请参阅。您是否看到开发人员工具中请求了
edit.js
,或者根本没有请求?另外,您的
脚本在
search.php
输出中的位置在哪里?可能因为它在标记中的位置而没有被包含。
<script>
   $(document).ready (function() {
      $('#test').click(function(event) {
        $('#content').empty();
        $('#content').load('view/search.php', function() {
               $.getScript(path+to+script);
        });
      })
    })
</script>