Jquery .find()在$.ajax响应中
我只是做一个简单的ajax请求来获取文件的内容,但是当我试图获取实际的Jquery .find()在$.ajax响应中,jquery,html,ajax,Jquery,Html,Ajax,我只是做一个简单的ajax请求来获取文件的内容,但是当我试图获取实际的时,它总是不返回任何内容 jQuery.ajax(location).done(function(response) { // RETURNS [] console.log(jQuery(response).find('body')); // <body class="html ..."> // RETURNS [] console.log(jQuery(response)
时,它总是不返回任何内容
jQuery.ajax(location).done(function(response) {
// RETURNS []
console.log(jQuery(response).find('body'));
// <body class="html ...">
// RETURNS []
console.log(jQuery(response).find('.html'));
// When I try to get any other div it just works
// RETURNS THE DIV
console.log(jQuery(response).find('#header'));
})
jQuery.ajax(位置).done(函数(响应){
//返回[]
log(jQuery(response.find('body'));
//
//返回[]
log(jQuery(response.find('.html'));
//当我试着得到任何其他div时,它只是起作用
//返回DIV
log(jQuery(response.find('#header'));
})
jQuery(response)去掉了html、head和body标记
你需要用一个额外的div来包装你的身体内容并寻找它
编辑:
jQuery(string)解析字符串以检查它是选择器还是html片段。如果是html片段,字符串将被注入一个空div,该div不支持html、head和body标记,因此它们被剥离。jQuery(response)剥离html、head和body标记
你需要用一个额外的div来包装你的身体内容并寻找它
编辑:
jQuery(string)解析字符串以检查它是选择器还是html片段。如果是html片段,字符串将被注入不支持html的空div中,head和body标记因此被剥离。响应包含的实际数据是什么?只有网站
…
中的完整html,因此源代码是位置
与页面位于同一域中?是的,只是为了清楚起见,我正在获取文件的实际内容,.find()方法只是无法获取
的内容,但是我可以搜索任何id或类。看看这里,解决方案的问题是相同的:响应包含的实际数据是什么?只是网站…
中的完整html,所以源代码是位置
,与页面位于同一域上?是的,为了清楚起见,我正在获取文件的实际内容,.find()方法无法获取
的内容,但是我可以搜索任何id或类。看看这里,解决方案也是一样的问题:如果我使用console.log,我可以看到其中的html、head和body标记,它没有被剥离你可以看到响应变量中的标记,但是jQuery将它们剥离。如果我使用console.log,我可以看到其中的html、head和body标记,它没有被剥离你可以看到响应变量中的标记,但是jQuery将它们剥离。