Как получить свойство ID в KendoUI TreeView

#kendo-ui #kendo-treeview

#kendo-ui #kendo-просмотр дерева

Вопрос:

Вот мое древовидное представление KendoUI :

 <script src="~/scripts/kendo.all.min.js"></script>
            <script type="text/javascript">

            $(document).ready(function () {


                var regions = {
                    type: "odata",
                    transport: {
                        read: function (options) {
                            $.ajax(
                            {
                                type: "POST",
                                url: "Territory/AllRegions?countryID=?"   options.ID,
                                contentType: "application/json; charset=utf-8",
                                dataType: 'json',
                                success: function (data) {
                                    $("#treeview").data("kendoTreeView").dataSource.data(data);
                                }
                            });
                        },

                    },
                    schema: {
                        model: {
                            hasChildren: function () {
                                return false;
                            }
                        }
                    }
                };

                var countries = {
                    type: "odata",
                    schema: {
                        model: {
                            id: "Id",
                            hasChildren: "HasChildren",
                            children: regions
                        }
                    },
                    transport: {
                        read: function (options) {
                            $.ajax(
                            {
                                type: "POST",
                                url: "Territory/AllCountries?territoryID=?"   options.ID,
                                contentType: "application/json; charset=utf-8",
                                dataType: 'json',
                                success: function (data) {
                                    $("#treeview").data("kendoTreeView").dataSource.data(data);
                                }
                            });
                        }
                    }
                };

                var Territories = new kendo.data.HierarchicalDataSource({
                    type: "odata",
                    transport: {
                        read:  function (options) {
                            $.ajax(
                            {
                                type: "POST",
                                url: "Territory/AllTerritories",
                                contentType: "application/json; charset=utf-8",
                                dataType: 'json',
                                success: function (data) {
                                    $("#treeview").data("kendoTreeView").dataSource.data(data);
                                }
                            });
                        }
                    },
                    schema: {
                        model: {
                            hasChildren: "HasChildren",
                            Id: "ID",
                            children: countries
                        }
                    }
                });

                $("#treeview").kendoTreeView({
                    dataSource: Territories,
                    dataTextField: ["Name", "Name", "Name"],
                    dataValueField:"ID"
                });
            });

        </script>
 

Иерархия — это Территории-> страны-> регионы
Я вижу заполнение территорий, но я не могу получить ID свойство выбранной территории, чтобы страны могли быть заполнены, то есть в вызове ajax,
options.ID там не определено.

Комментарии:

1. Ссылка .. Вы можете обратиться к этому сайту.

2. Есть какие-нибудь успехи в этом? Запуск в основном то же самое.

3. Не уверен, решит ли это вашу проблему, но в рамках success функции ваших вызовов ajax вы должны вызывать, options.success(data); а не использовать для этого ненужный оператор jQuery. Использование options.success(data); загрузит источник данных, а затем по ассоциации виджет, к которому он привязан.

4. существует проблема в hasChildren: «hasChildren»…