Деталь нокаута не работает с выбором

here`see my fiddle

http://jsfiddle.net/kirannandedkar/JUChh/2/

Когда я нажимаю на имя, оно не загружает список выбора и выдает ошибку, что функция ожидается. На самом деле я хочу загрузить выбор и значение должно быть выбрано. Когда я изменяю что-то в select, это должно отражаться в списке. В настоящее время ModuleId не заполняется в списке, и когда я нажимаю на список, он не заполняет список выбора.

ViewModel:

var Person = function(id, name, country,ModuleId) {
    var self = this;
    self.id = ko.observable(id);
    self.name = ko.observable(name);
    self.country = ko.observable(country); 
    self.ModuleId= ko.observable(ModuleId);
    return self;
};

var vm = (function() {
    var people = ko.observableArray(),
        selectedPerson = ko.observable();
        self.editModuleId = ko.observable();
        self.modules = ko.observableArray([{"Id": 1,"ModuleName": "M1"},{"Id":2,"ModuleName":"M2"}]);

        getPeople = function() {
            people.push(new Person(1, 'John', 'USA',1));
            people.push(new Person(2, 'Mike', 'UK',1));
            people.push(new Person(3, 'Dan', 'AUS',2));
        },
        selectPerson = function(p){
            selectedPerson(p);
             self.editModuleId(ko.utils.arrayFirst(self.modules(), function (data) {
                    console.log("item module id " + p.ModuleId());
                    return data.Id() === p.ModuleId();
                }));
        };



    getPeople();

    return {
        people: people,
        selectedPerson: selectedPerson,
        selectPerson : selectPerson 
    };
})();


ko.applyBindings(vm);

Посмотреть:


 





<span data-bind="text:id"></span>

    
    

Ответы на вопрос(1)

Ваш ответ на вопрос