在jquery Droppable中我想触发.Drop事件,并调用Ajax Get,然后附加到容器。
Get
然后附加到DropZoneContainer Get
返回Divs
,即从服务器返回,并进入2列网格,需要能够对2列网格进行排序。Drop
或Accept
$("#DropZone1 #DropZone2").droppable({ drop: function(event, ui) { // do appending of server side div into the DropZone // where $(this).doSomething() - // call ajax .get and append to $(this) .append($.get("/some-url/" + $(ui.draggable).text(), function(response-data){ #my HTML fragment response-data });); // do something with the draggable item //$(ui.draggable).doSomething(); } });
答案 0 :(得分:1)
要发出ajax请求并将响应附加到droppable / draggable容器,可以通过设置上下文来完成,如下所示。
$(document).ready(function(){
$("#DropZone").droppable({
drop: function(event, ui) {
$.ajax({
url: '/some-url/' + $(ui.draggable).text(),
success: function(data, status, xhr){
$(this).append(data);
},
context: this //context:ui.draggable to append to draggable container
});
}
});
});
这可以在下拉时触发,因为只有在删除了已接受的拖动时,才会触发下拉是事件。另一方面,accept是一个选项,用于控制可以接受的可拖动元素的类型。有关此内容的更多信息,请参阅this。