Введение
Я отображаю дерево, используя jquery
библиотека плагинов для дерева jstree
.
1007 * Expectation *
Поскольку я имею в виду файлы - они имеют расширения - поэтому упорядочивание по имени не очень полезно. Казалось бы, сортировка по типу лучше всего.
Для этого я добавил атрибут данных item-sort-value
, который составляет extension + fileName + uuid
.
Error
Я бы хотел отсортировать дерево по этому полю data-item-sort-value
, но отобразить стандартное имя файла в дереве. Пока я не могу получить его значение внутри функции сортировки .
Я тоже пробовал:
- a1.getAttribute ('data-item-sort-value') ... получил
TypeError: a1.getAttribute is not a function
- a1.a_attr ('data-item-sort-value') ... получил
TypeError: a1.getAttribute is not a function
- a1.data ('item-sort-value') ... получил
TypeError: a1.data is not a function
- a1.node.data ('item-sort-value') ... получил
TypeError: a1.data is not a function
Мой код
'sort': function(a, b)
{
let a1 = this.get_node(a);
let b1 = this.get_node(b);
if (a1.node.attr('item-sort-value') === b1.node.attr('data-item-sort-value'))
{
return (a1.node.attr('data-item-sort-value') > b1.node.attr('data-item-sort-value')) ? 1 : -1;
}
else
{
return (a1.icon > b1.icon) ? 1 : -1;
}
}
Консольный вывод