jQuery ajax在另一个页面上加载div的内容不起作用

时间:2015-09-28 10:35:52

标签: javascript jquery

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

例如:

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 个答案:

答案 0 :(得分:2)

来自Docs

  

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

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

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