Как удалить / удалить элемент из источника перетаскивания Dojo?
У меня есть ниже 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");
});
});
1 ответ
Решение
Удалить все (оставшиеся) элементы в источнике:
// e.g., var catalog = new Source("catalogNode");
catalog.selectAll().deleteSelectedNodes();
Новые предметы могут быть добавлены в любое время, используя те же insertNodes()
:
catalog.insertNodes(false, additionalData);