2012-08-10 101 views
0

我有下面的Dojo DnD,我不知道如何刪除和添加來自/到catalog源的項目。我最終想要做的就是讓用戶的是:從catalogwishlist如何從Dojo拖放源中刪除/刪除項目?

  1. 拖動項目......這是工作的罰款。
  2. 刪除catalog中尚未移動到wishlist的任何剩餘項目,方法是單擊清除列表按鈕...在此處需要幫助。
  3. 能夠通過單擊未在下面的代碼中列出的另一個按鈕來將新項目添加到catalog ......需要幫助。

總之,我需要知道如何刪除的項目,並從/到catalog添加項目,並且有任何移動的項目留在wishlist

dojo.addOnLoad(function() { 
    require([ "dojo/dom-class", "dojo/dnd/Source", "dijit/form/Button", "dojo/domReady!" ], function(domClass, Source){ 
     var catalog = new Source("catalogNode"); 
     catalog.insertNodes(false, [ 
      { data: "Bushmaster <div id='5' style='display:none;'>5</div>"}, 
      { data: "Colt <div id='4' style='display:none;'>4</div>"}, 
      { data: "DPMS <div id='6' style='display:none;'>6</div>"}, 
      { data: "Glock <div id='2' style='display:none;'>2</div>"}, 
      { data: "Kahr Arms <div id='7' style='display:none;'>7</div>"}, 
      { data: "Marlin <div id='3' style='display:none;'>3</div>"}, 
      { data: "Remington <div id='78' style='display:none;'>78</div>"}, 
      { data: "Rock River Arms <div id='1' style='display:none;'>1</div>"}, 
      { data: "Smith & Wesson <div id='105' style='display:none;'>105</div>"} 
     ]); 
     catalog.forInItems(function(item, id, map){ 
      domClass.add(id, item.type[0]); 
     }); 

     var wishlist = new Source("wishlistNode"); 

     new dijit.form.Button({ 
      label: "Clear List", 
      onClick: function() { 
       alert("Clearing Items"); 
      } 
     }, 
     "clearListBtn"); 
    }); 
}); 

回答

1

刪除一個源中的所有(剩餘)元素:

// e.g., var catalog = new Source("catalogNode"); 
catalog.selectAll().deleteSelectedNodes(); 

的新項目可以在任何時間加入通過使用非常相同的insertNodes()

catalog.insertNodes(false, additionalData); 
+0

尤金,對於由於幫助..它完美的作品。 – Karl 2012-08-13 12:51:33