Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 请求一页v&#x;一个ajax但是知道哪个类有主体_Jquery_Ajax_Dom_Jquery Selectors - Fatal编程技术网

Jquery 请求一页v&#x;一个ajax但是知道哪个类有主体

Jquery 请求一页v&#x;一个ajax但是知道哪个类有主体,jquery,ajax,dom,jquery-selectors,Jquery,Ajax,Dom,Jquery Selectors,在获取页面vía ajax时,我尝试获取body类,如下所示: $.get(url, function (data) { console.log(data); console.log( $(data).find('body').length, $(data).filter('body').length ); }); 当数据记录完整的html代码时(带有doctype、head、body等) 两个日志都将返回0 知道我遗漏了什么吗?jQuery似乎不喜欢任何带有doctype或类

在获取页面vía ajax时,我尝试获取body类,如下所示:

$.get(url, function (data) {
    console.log(data);
    console.log( $(data).find('body').length, $(data).filter('body').length );
});
当数据记录完整的html代码时(带有doctype、head、body等)

两个日志都将返回
0


知道我遗漏了什么吗?

jQuery似乎不喜欢任何带有doctype或类似于
$(“”)的东西。不知道为什么或者这是否是一个bug,但是您可以创建自己的文档并从中创建jQuery集合

var doc = document.implementation.createHTMLDocument();
doc.innerHTML = data;
var $doc = $(doc);
console.log($doc.find("body").length);

尝试
console.log($(数据))并且您可以看到数据从html生成的实际jQuery对象。。。我一定错过了什么……太好了!这管用!知道为什么
console.log($doc.find(“body”).className)是否返回emtpy字符串?(主体有几个类)@ToniMichelCaubet
.find
还返回jQuery集合,
.className
不是jQuery属性。您可以使用
.attr(“class”)
,也可以不使用jQuery,使用
doc.querySelector(“body”).classList
(或
className