В асинхронном древовидном представлении обратного вызова нет, но добавить свой собственный достаточно просто.Материал AJAX находится здесь:
https://github.com/jzaefferer/jquery-treeview/blob/master/jquery.treeview.async.js#L42
$.ajax($.extend(true, {
url: settings.url,
dataType: "json",
data: {
root: root
},
success: function(response) {
child.empty();
$.each(response, createNode, [child]);
$(container).treeview({add: child});
}
}, settings.ajax));
Вы можете добавить обратный вызов, добавив settings.dataLoaded
и изменив приведенный выше фрагмент на что-то вроде этого:
$.ajax($.extend(true, {
url: settings.url,
dataType: "json",
data: {
root: root
},
success: function(response) {
if(settings.dataLoaded)
settings.dataLoaded();
child.empty();
$.each(response, createNode, [child]);
$(container).treeview({add: child});
}
}, settings.ajax));
Я только что добавил две строки под success:
.Тогда вы бы настроили древовидную структуру следующим образом:
$("#tree").treeview({
url: "/loadtree",
dataLoaded: my_function
});
Я не пробовал это, но оно должно работать, и если нет, то это будет хорошей отправной точкой для его начала.
У вас есть доступ к исходному коду, нет веской причины не использовать его.И нет веской причины не добавлять поддержку обратного вызова самостоятельно и отправлять Jörn Zaefferer патч для добавления этой функциональности в основной репозиторий.