jQuery .load()不加载脚本

Eli*_*isa 6 jquery

我有.load()像load_to.html页面中的jQuery 函数

$('#targetID').load('/load_from.html #bodyPart, script')
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不是从load_from.html页面加载JavaScript.有什么办法,我可以加载JavaScript.

Dav*_*ang 5

来自jQuery的文档.load():

jQuery使用浏览器的.innerHTML属性来解析检索到的文档并将其插入到当前文档中.在此过程中,浏览器通常过滤从文档元素如<html>,<title>,或<head>元件.

要加载脚本,您应该<script>自己在文档中创建元素<head>:

$('<script>', {src: 'js_file.js'}).appendTo('head');
Run Code Online (Sandbox Code Playgroud)

也许您可以使用ajax从服务器请求加载脚本列表:

$.post('scripts_to_load.json', function (data) {
    for (var i = 0; i < data.scripts.length; i++) {
        $('<script>', {src: data.scripts[i]}).appendTo('head');
    }
});
Run Code Online (Sandbox Code Playgroud)