Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery只允许删除一个对象 $(“li”).draggable({ 助手:“克隆” }); $(“#div1”)。可拖放({ drop:函数(事件、用户界面){ $(“_Javascript_Jquery_Jquery Ui_Jquery Ui Draggable_Jquery Ui Droppable - Fatal编程技术网

Javascript jquery只允许删除一个对象 $(“li”).draggable({ 助手:“克隆” }); $(“#div1”)。可拖放({ drop:函数(事件、用户界面){ $(“

Javascript jquery只允许删除一个对象 $(“li”).draggable({ 助手:“克隆” }); $(“#div1”)。可拖放({ drop:函数(事件、用户界面){ $(“,javascript,jquery,jquery-ui,jquery-ui-draggable,jquery-ui-droppable,Javascript,Jquery,Jquery Ui,Jquery Ui Draggable,Jquery Ui Droppable,”)附录(“#div1”); } }); 我有一个列表中的对象,可以拖放到名为div1的div中。但是当我把一个丢进div的时候,我不想再丢一个。我已经尝试使用带有计数的、for、if和while循环 这将有助于: $("li").draggable({ helper: "clone" }); $("#div1").droppable({ drop: function (event, ui) {

”)附录(“#div1”); } }); 我有一个列表中的对象,可以拖放到名为div1的div中。但是当我把一个丢进div的时候,我不想再丢一个。我已经尝试使用带有计数的、for、if和while循环

这将有助于:

$("li").draggable({
            helper: "clone"
        });

        $("#div1").droppable({
            drop: function (event, ui) {
                $("<p></p>").appendTo("#div1");

            }
        });

这是一个完整的解决方案,它只允许删除一个项目,而且,如果存在一个项目,它将在下一次删除时替换为新项目。(如果有人改变主意,这很有用。打电话就行了

drop: function (event, ui) {
    var $this = $(this),
    maxItemsCount = 1;

    if ($this.children('li').length > maxItemsCount ){
        ui.sender.draggable('cancel');
        alert("To much items!");                
    }    

}

建议:也许您可以使用jQuery的.one()事件处理程序()。说明:将处理程序附加到元素的事件。对于每个事件类型,每个元素最多执行一次处理程序。使用此方法,我无法将其附加到div,我也尝试了加入append
refreshDragDrop(dragClassName,dropDivId); 

refreshDragDrop = function(dragClassName,dropDivId) {
  $( "." + dragClassName ).draggable({
    connectToSortable: "#" + dropDivId,
    helper: "clone",
    revert: "invalid"
  });
  $("#" + dropDivId).droppable({
    accept: '.' + dragClassName,
    drop: function (event, ui) {
      var $this = $(this),
        maxItemsCount = 1;
      if ($this.children('div').length == maxItemsCount ){
        //more than one item,just replace
        $(this).html($(ui.draggable).clone());
      } else {
        $(this).append($(ui.draggable).clone());
      }
    }
  });
}