0

我有一個可排序元素的列表,如果您將它們放入一個thrash bin中,它們可以被刪除。 問題是元素在移除後仍然存在。刪除後可排序的元素()

<div class="content-remove" id="content-remove"></div> 
<div class="content-elements" id="content-elements"> 
    <div class="element-item"> 
    </div> 
</div> 


$("#content-remove").droppable({ 
     accept: '#menu-contents .element-item', 
     activeClass: 'active-remove', 
     hoverClass: 'active-hover-remove', 
     tolerance: 'pointer', 
     drop: function(event, ui) { 
      ui.draggable.remove(); 
     }, 
     over: function(event, ui) { 
      ui.draggable.css({border: '2px solid #E64746', opacity: '0.7'});     
      ui.droppable.css({border: '2px solid #E64746', opacity: '0.7'}); 
      }, 
     out: function(event, ui) { 
      ui.draggable.css({border: '1px solid #ccc', opacity: '1'}); 
      ui.droppable.css({border: '1px solid #ccc', opacity: '1'}); 
      } 
     }); 
$("#menu-contents .content-elements").sortable({placeholder: 'sortable-placeholder'}).disableSelection(); 

After deleting

正如您可以在拇指看到,有兩個佔位符,但只有一個元素。我該如何解決這個問題? 謝謝。

+1

很可能是因爲你有一個JS錯誤,它不能完成放置過程。檢查控制檯。 – Gabriel

+0

就是這樣,我在刪除它後試圖訪問元素xD – legomolina

回答

0

我懷疑你要移除ui.draggable,而不是原始的元素。您可能想嘗試如下所示:

drop: function(event, ui) { 
    var id = ui.draggable.attr("id"); 
    $("#" + id).remove(); 
}, 
0

發生錯誤。刪除元素後,我嘗試訪問.css方法;這導致了一個錯誤,並導致其餘的崩潰。