2

可能重复:
从 HTML 字符串中解析和选择

所以,我有以下 jQuery get 函数:

$.get('newwindow.html', function(data){
  h = data;
})

我的目标是用 h 做点什么。基本上它返回一堆html,但我想要一个特定的div。我试过了:

$(h).find('#div_name')

我还尝试将回调的内部更改为:

h = $('#div_name', data);

或者

h = $('#div_name', $(data));

无济于事,到目前为止我成功的最佳解决方案是将以下内容放入我的回调中:

$(data).each(function(k,v){
  if ( $(v).attr('id') === 'div_name') h = $(v).text();
});

这似乎非常低效。有没有更好的办法?

4

1 回答 1

0

html要从您的 ajax 调用中解析,请使用jQuery .filter()

示例用法:

$(function () {
    $.get('newwindow.html', function (data) {
        var h = data;
        console.log($(h).filter('#div_name').html());
        //alert($(h).filter('#div_name').html()); //Use this alert if using IE
    });
});

有关 jQuery .filter() 的更多信息,请访问:http ://api.jquery.com/filter/

于 2012-12-22T07:11:35.217 回答