Kendo UI init:
$('#tree').kendoTreeView({
select: function(e){
this.expand(e.node);
}
});
У меня есть первый уровень дерева и хочу загрузить другие уровни, щелкнув по узлу. Как я понял из документации, если использовать datasource, он будет загружать первый уровень тоже.
Поэтому я слушаю клик:
$(#tree).on('click', 'li', function(e){
$.ajax({
url: 'ajax.php',
type: 'post',
dataType: 'json',
data: $('#filter').serialize(),
success: function(data){
$.map(data, function(val){
// What to do here?
});
}
});
});
В документации я нахожу только insertAfter и insertBefore, но ничего подобного insertInto.
Как я могу загрузить новые данные в li
как дочерние ul
, или заставить источник данных начать работать со второго уровня?
Вы можете попробовать использовать метод append. Другой вариант - настроить источник данных дерева. Затем он автоматически загружает новые уровни, когда пользователь расширяет узел. Вы можете проверить онлайн-демонстрацию: http://demos.kendoui.com/web/treeview/remote-data.html
id
в <li>
с помощью метода append
? {taxt:'test',id:'testID'}
не работает.
transport.read
должен правильно идентифицировать расширенный узел и загружать (и вставлять в) полученные данные.