使用jQuery load()保留外部HTML文件的加载部分

时间:2012-09-26 16:44:14

标签: jquery load droppable

我所拥有的是1个可放置的div(dropZone)和几个可拖动的。 可拖动的是HTML代码片段,当放入dropZone时,会在其中呈现html代码。 (HTML代码存储在带有ID的外部html文件中) 会发生什么事情,当我放下一个可拖动的,它工作正常。但我删除了另一个,它清除了当前的代码。 关于如何做到这一点的任何建议?

$("#dropZone").droppable({
    tolerance: 'touch',
    over: function() {
        $('.dragMe').addClass('red');
    },
    out: function() {
        $('.dragMe').removeClass('red');
    },
    drop: function(event, ui) {
        var id = ui.draggable.attr("id");
        $(this).load('test.html #' + id);
    }
});

有没有办法将当前代码保留在dropZone中,所以当我删除另一个draggable时,它会添加到代码中?

非常感谢你。

1 个答案:

答案 0 :(得分:0)

你可以用这个:

jQuery.get('http://localhost/test.html', function(data) 
{ 
    alert(data); 
}); 

这将获取数据,然后您可以将数据分配给变量以供以后使用。如果您有多个加载,那么只需创建一个包含所有数据的数组,并在每次加载时将其添加到数组中。

编辑:(在您的情况下)

drop: function(event, ui) 
{
    var id = ui.draggable.attr("id");
    jQuery.get('http://localhost/test.html#' + id, function(data) 
    { 
        //store data as variable
        $(this).html(data);
    }); 
}