Jquery - 按id加载元素并添加到div

时间:2015-01-10 06:17:09

标签: jquery ajax

我在完成项目时遇到了麻烦。基本上,我在另一个HTML中有很多对话框div,并且必须加载所需的对话框并将其添加到我的包装器div

如何按ID加载元素并添加到div?我已经搜索了我的答案,我想出了$.ajax()但它可以'加载一个元素(或者我可能做错了什么)。

JS:

$.ajax({
   url: "dialogs.html#modal_" + theRestOfItsId,
   async: false
   }).done(function(html) {
       $("#dialog-area").prepend(html);
});

#dialog-area是对话框包装器(包含所有需要的对话框的那个,所以我可以轻松地清理它)

虽然我很确定它不会起作用,但这就是我想要做的而不是使用$("#dialog-area").load("dialogs.html#modal_" + theRestOfItsId)

3 个答案:

答案 0 :(得分:1)

您可以使用.load() implementation并使其正常工作:

$.ajax({
    url: "dialogs.html",
    dataType: 'html',
}).done(function(html) {
   var selector = '#modal_' + theRestOfItsId;

   $('<div>')
     .append($.parseHTML(html))
     .find(selector)
     .prependTo('#dialog-area');
});

答案 1 :(得分:0)

尝试修改代码,如下所示。 html.d

&#13;
&#13;
$.ajax({
   url: "dialogs.html #modal_" + theRestOfItsId,
   async: false
   }).done(function(html) {
       $("#dialog-area").prepend(html.d);
});
&#13;
&#13;
&#13;

答案 2 :(得分:0)

我在等待时做出了自己的答案。

修正:

$("body").append("<div id="temp"></div>");
$("#temp").load('dialogs.html #modal_'+theRestOfItsId, "" , function(){
    var temp = $("#temp").html();
    $(temp).prependTo("#dialog-area");
    $("#temp").remove();
});