我有以下Dojo DnD,我无法弄清楚如何从/ catalog
来源删除和添加项目。我最终想做的是允许用户:
catalog
拖到wishlist
...这样运作正常。catalog
中未移至wishlist
的所有剩余项目...此处需要帮助。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");
});
});
答案 0 :(得分:1)
删除源中的所有(剩余)元素:
// e.g., var catalog = new Source("catalogNode");
catalog.selectAll().deleteSelectedNodes();
可以使用完全相同的insertNodes()
:
catalog.insertNodes(false, additionalData);