作为jQuery插件的一部分,使用$.get()
来拉取奇怪的对象格式,这意味着在任何后期函数挂钩中都无法进行DOM遍历:
$.get($href)
.done(function(){
$linkClicked.addClass('active')
})
.fail(function(){
$.get(settings.errorUrl, function(){
$('.main-navigation .active').removeClass('active')
})
})
.always(function(data){
// The below line does not work correctly
$(settings.target).hide().html( $(data).children(settings.target).html() ).fadeIn('fast')
})
如果有人伸出援助之手,那就太好了。非常感谢。
答案 0 :(得分:2)
我想你可以这样做:
$.get('ajax/test.html', function(data) {
var container = $('<div />').html(data);
var contentYouNeed = container.find('#ajaxID').html();
});
正如您在文件here上看到的那样(
http://api.jquery.com/jQuery.get/),返回的data
依据
jQuery.get()
是PlainObject或String。
数据强>
输入: PlainObject 或 String
使用请求发送到服务器的普通对象或字符串。
要从此对象检索内容,请将此数据放在<div>
这样的对象中。
var container = $('<div />').html(data);
您可以使用find()
获取内容。
var contentYouNeed = container.find('#ajaxID').html();
答案 1 :(得分:1)
不不不不。您不要使用regex
来解析HTML read this。
另外,要解决您的问题,请使用jQuery selectors:$("#yourID").html()
答案 2 :(得分:0)
所以响应总是一个 div元素?在这种情况下,它只是抓住它的内容。无论ID和属性是什么。
$.get('ajax/call.php', function(data) {
var contents = $(data).html();
});