Knockout, дерево кендо, mvvm, HierarchicalDataSource: невозможно получить значение свойства toLowerCase.

Я пытаюсь заполнить свое древовидное представление с помощью модели представления:

ВИДМОДЕЛЬ:

var vm = {
        dragAndDrop: ko.observable(true),
        dataSource: getDataAPI(),
        dataTextField: "FullName"
    }

    return vm;

function getDataAPI() {
        var serviceRoot = "http://demos.kendoui.com/service";
        var homogeneous = new kendo.data.HierarchicalDataSource({
            transport: {
                read: {
                    url: serviceRoot + "/Employees",
                    dataType: "jsonp"
                }
            },
            schema: {
                model: {
                    id: "EmployeeId",
                    hasChildren: "HasEmployees"
                }
            }
        });
        return homogeneous;
    }

ПОСМОТРЕТЬ:

 <div data-bind="kendoTreeView: { dragAndDrop: dragAndDrop, dataSource: dataSource }"></div>

ОШИБКА:

Не удалось получить значение свойства toLowerCase.

РЕЗЮМЕ: я могу заполнить дерево, если использую статические данные json, используя этот метод нокаута


person LastTribunal    schedule 04.03.2013    source источник
comment
Откуда взялся этот toLowerCase? Я не вижу его нигде в вашем коде. Когда возникает ошибка, в какой строке кода и в каком файле возникает ошибка?   -  person Judah Gabriel Himango    schedule 04.03.2013
comment
кендо.all.min.js строка 10   -  person LastTribunal    schedule 04.03.2013


Ответы (1)


Проблема, вероятно, заключается в том, что Кендо думает, что ваши данные являются строкой, когда это число или другой тип.

Возможно, вам потребуется поместить атрибут поля данных в ваш HTML. См. эту тему для получения дополнительной информации.

person Judah Gabriel Himango    schedule 04.03.2013
comment
Да, я тоже видел этот поток, но ошибка возникает, потому что набор данных возвращается нулевым. Кажется, что kendo.data.HierarchicalDataSource ничего не получает от веб-сервиса. - person LastTribunal; 04.03.2013
comment
Хорошо, если ваш HierarchicalDataSource возвращает null, вы должны включить эту информацию в свой вопрос, потому что это предполагает, что проблема не имеет ничего общего с пользовательским интерфейсом или JavaScript, а связана со всей вашей службой данных. - person Judah Gabriel Himango; 05.03.2013
comment
Я только что заметил, что вызов службы передачи данных идет на сайт kendoui.com. Если вы запускаете это локально или из домена, отличного от kendoui.com, вы, вероятно, получите ошибки межсайтового скриптинга. - person Judah Gabriel Himango; 05.03.2013
comment
У меня такая же проблема с локальными данными - person LastTribunal; 06.03.2013