获取并评估javascript——为什么不工作?

获取并评估javascript——为什么不工作?,javascript,jquery,Javascript,Jquery,我有一个页面,我可以在其中单击从不同页面加载一些内容。这个内容需要一些额外的javascript才能工作,所以我还想加载它并通过eval()执行它。这是我的方法,但不起作用: $.get('jsfile.js', function(jsfile) { eval(jsfile); }); $('#content').load('otherpage.php #thiscontent'); 我不明白为什么它不起作用。我知道内联javascript通常不会执行,但eval()不应该处理这个问

我有一个页面,我可以在其中单击从不同页面加载一些内容。这个内容需要一些额外的javascript才能工作,所以我还想加载它并通过eval()执行它。这是我的方法,但不起作用:

$.get('jsfile.js', function(jsfile) {
     eval(jsfile);
});
$('#content').load('otherpage.php #thiscontent');

我不明白为什么它不起作用。我知道内联javascript通常不会执行,但eval()不应该处理这个问题吗?

这是因为当您在调用
jQuery.load
时指定页面片段时,脚本标记会被剥离

请参见文档中的

与$.get()不同,.load()方法允许我们指定 要插入的远程文档。这是通过一种特殊的方法实现的 url参数的语法。如果有一个或多个空格字符 包含在字符串中,字符串中第一个 空间被假定为确定内容的jQuery选择器 待加载


您将需要使用另一项功能来实现所需的结果。

为什么不将文件包含在HTML中<代码>如果控制台记录了任何错误消息,该怎么办?字符串“jsfile”在执行之前是什么样子的?$.getScript?尝试
$('#content').load('otherpage.php#thiscontent',function(){$.getScript('jsfile.js')})@RahulDesai,因为这是一个很少被点击的链接。并非所有用户都需要加载这个巨大的js文件。