.load没有将内容加载到元素中

时间:2014-05-13 16:54:46

标签: javascript jquery ajax

我使用以下代码:

$(function () {
    $('#result').load('_shared.html body > :not(main)');
});

<div id="result" />元素仍为空。

当我打开_shared.html并在控制台中运行相同的选择器时:

$('body > :not(main)').length

我得到3作为结果。

在Firefox和Chrome中都没有控制台错误。

我正在使用本地文件(直接来自文件系统,没有任何网络服务器),但这似乎不是问题,因为我使用--allow-file-access-from-files命令行选项运行Chrome,并且Chrome会将网络请求报告给_shared.html

我做错了什么,我该如何解决这个问题?

更新

使用Kevin B的回答和评论,我使用以下内容:

$('#result').load('_shared.html > :not(main, title, link, meta)');

仅插入body的直接子元素,并排除head中定义的元素。

1 个答案:

答案 0 :(得分:0)

您的选择器应为:not(.main),因为返回的html中不存在jQuery body

$('#result').load('_shared.html :not(main)');