2015-09-28 136 views
1

是不是jQuery的ajax支持从另一个页面加载内容?我很好,通过使用.load,但只是好奇,为什么?jQuery ajax加载另一个页面上div的内容不起作用

例如:

var ajaxModal = $('<div />', { 
     'class': 'ajax-modal' 
    }), 
    $data = $(link).data(), 
    options = { 
     url: $(link).prop('href') + ' ' + $data.target 
    }; 

ajaxModal.load(options.url, function() { 
    ajaxModal.appendTo('body').show(); // works 
}); 

$.ajax(options).done(function (data) { 
    ajaxModal.html(data).appendTo('body').show(); // doesn't work 
}); 
+1

什么是'ajaxModal'? –

+0

只是附加内容的div。 – Morpheus

+0

你调试了吗? “完成”回调甚至会被调用? –

回答

2

Docs

的​​方法,不像$.get(),允许我们指定的 远程文档的部分被插入。这是通过url参数的特殊 语法实现的。如果字符串中包含一个或多个空格字符 ,则假定第一个 空间后面的字符串部分是用于确定要加载的内容 的jQuery选择器。

如果你真的想在你的情况下使用AJAX,你可以使用类似:

$.ajax(options).done(function (data) { 
    var DivYouWant = $("#DivYouWant", data); 
    ajaxModal.html(DivYouWant).appendTo('body').show(); // does work 
}); 
+0

辉煌,直接点:)谢谢你的答案:) – Morpheus

相关问题