Установить идентификатор при использовании insertnodes в dojo
При использовании insertNodes для узлов будет создан уникальный идентификатор.
insertNodes(addSelected, data, before, anchor)
Как мы назначаем определенное имя / текст в качестве идентификатора для новых узлов?
1 ответ
Создайте пользовательскую функцию "создатель" и установите идентификатор элемента. Пример:
В вашем HTML
<ol id="listNode">
</ol>
В вашем JavaScript:
require(["dojo/dnd/Source"]);
function myCreator( item, hint ) {
var myLi = dojo.create( 'li', { id : item.id, innerHTML: item.text });
if (hint == 'avatar') {
// create your avatar if you want
myLi.innerHTML = "Moving " + item.text + "...";
}
return {node: myLi, data: item, type: "foo"};
}
dojo.ready(function() {
var list = new dojo.dnd.Source("listNode", {creator: myCreator});
list.insertNodes(false, [
{ id : "id1", text : "foo"},
{ id : "id2", text : "bar"},
{ id : "id3", text : "baz"}
]);
});