Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
Javascript 如何使用jqueryajax在另一个页面上获取div的html?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何使用jqueryajax在另一个页面上获取div的html?

Javascript 如何使用jqueryajax在另一个页面上获取div的html?,javascript,jquery,html,Javascript,Jquery,Html,我正在使用jQuery的ajax代码加载新页面,但希望他只获取div的html 我的代码: HTML: 我希望他在另一个页面上只获取$('div#content')的html。如何操作?不幸的是,ajax请求会获取整个文件,但您可以在检索到内容后对其进行过滤: $.ajax({ url:href, type:'GET', success: function(data) { var content = $('<div>').append(data).fi

我正在使用jQuery的ajax代码加载新页面,但希望他只获取div的html

我的代码: HTML:


我希望他在另一个页面上只获取$('div#content')的html。如何操作?

不幸的是,ajax请求会获取整个文件,但您可以在检索到内容后对其进行过滤:

$.ajax({
   url:href,
   type:'GET',
   success: function(data) {
       var content = $('<div>').append(data).find('#content');
       $('#content').html( content );
   }
});
我假设这不是一个跨域请求,因为这不起作用,只有同一域上的页面。

好的,您应该“构造”html并找到.content div

像这样:

$.ajax({
   url:href,
   type:'GET',
   success: function(data){
       $('#content').html($(data).find('#content').html());
   }
});
简单

您可以使用JQuery.load()方法:


如果您正在寻找来自不同域的内容,这将起到以下作用:

$.ajax({
    url:'http://www.corsproxy.com/' +
        'en.wikipedia.org/wiki/Briarcliff_Manor,_New_York',
        type:'GET',
        success: function(data){
           $('#content').html($(data).find('#firstHeading').html());
        }
});
这个控制台日志得到一个类似数组的对象:[meta,title,],非常奇怪

您可以使用JavaScript:

var doc = document.documentElement.cloneNode()
doc.innerHTML = data
$content = $(doc.querySelector('#content'))

嘿,我是布里亚克利夫!!:D我来自White Plains这样做可能会导致脚本从另一个页面运行-这是一个奇怪的问题,可能不会影响您,但我建议使用。Load不要这样做,这样做可能会导致脚本从另一个页面运行-这是一个奇怪的问题,可能不会影响您,但我建议使用.load来剥离脚本。Ala
var loadHolder=$('');loadHolder.load(href+'.'content',function(){$('.'content').loadHolder.find('.'content').html()})
这可以用javascript
fetch
来完成吗?我试过这么做,我的html页面被抓取的和上面一样,但是
$(数据)。find('.'content')
但是这个
$(数据)[47]。innerHTML
可以。我在正在获取的页面中有一个
div
id=“content”
。有线索吗?太好了!您知道如何让它正确加载给定根链接而不是相对链接或绝对链接的图像吗http://example.com/?基本上,你如何让它将图像加载到另一个站点?@fredsbend你不能跨站点加载,所以你必须使用相对链接。你能做的最好的事情就是使用JavaScript bookmarklet。几个小时以来,我一直在尝试做类似的事情,只是阅读了你的回复“注意,使用伪元素作为find()只对后代有效,不会找到根元素。”这对我帮助很大。非常感谢。
$.ajax({
   url:href,
   type:'GET',
   success: function(data){
       $('#content').html($(data).find('#content').html());
   }
});
 $( "#content" ).load( "ajax/test.html div#content" );
$.ajax({
    url:'http://www.corsproxy.com/' +
        'en.wikipedia.org/wiki/Briarcliff_Manor,_New_York',
        type:'GET',
        success: function(data){
           $('#content').html($(data).find('#firstHeading').html());
        }
});
$.ajax({
  url:href,
  type:'get',
  success: function(data){
   console.log($(data)); 
  }
});
var doc = document.documentElement.cloneNode()
doc.innerHTML = data
$content = $(doc.querySelector('#content'))