В моем приложении у меня есть функция, которая посещает мое все дерево, а затем выполняет некоторую зависящую от ajax обработку для каждого узла определенного типа (а именно, он добавляет к нему некоторых детей). Весь процесс занимает некоторое время для запуска, но поскольку он асинхронен, браузер не замерзает, и пользователь может продолжать взаимодействовать с узлами, которые получили ответ ajax, прежде чем все ответы будут выполнены.Можно ли конкретно отобразить значок узла Fancytree?
Для этого эффекта я настраиваемый iconClass
так:
iconClass: function (event, data) {
switch (data.node.data.type) {
case "folder":
return "fa fa-folder";
break;
case "normal":
return "fa fa-folder-o";
break;
case "loading":
return "fa fa-spinner fa-spin fa-pulse";
break;
default:
return "fa fa-question-circle";
}
}
С этими значками сконфигурированных, я поставил свою node.data.type
на «загрузку» до начала вызова Ajax для этого узла, а затем в ajax.success
я вновь -set my node.data.type
вернуться к «нормальному». Это само по себе не изменяет значок узла, если он отображается на экране.
Я знаю, что могу добиться того, чего я хочу, просто вызывая node.render()
или node.renderTitle()
, однако, так как я использую ext-tree
, это также вызывает renderColumns()
что-то я не хочу в этой точке (renderColumns создает поля ввода, и это заставляет меня проблемы с моей JQuery-плагин валидации)