-2

我有一个页面,在单击树视图节点时有树视图控件我试图更改视图模型然后查看,但它没有更新视图。

代码

 var emp = new EmpViewModel();

 $(document).ready(function () {

    var EmpViewModel = function () {

        var self = this;            
        self.EmpNo = ko.observable("0");
        self.EmpName = ko.observable("");
        self.Salary = ko.observable("");
        self.DeptName = ko.observable("");
        self.Designation = ko.observable("");
        var EmpData = {
            EmpNo: self.EmpNo,
            EmpName: self.EmpName,
            Salary: self.Salary,
            DeptName: self.DeptName,
            Designation: self.Designation
        };

        self.Employees = ko.observableArray([]);         


    ko.applyBindings(new EmpViewModel());
});


function OnTreeviewNodeSelect(e) {
         emp.EmpNo(e.EmpNo),
           emp.EmpName(e.EmpName),
           emp.Salary(e.Salary),
           emp.DeptName(e.DeptName),
           emp.Designation(e.Designation)

            ko.applyBindings(emp);
}

谢谢

4

1 回答 1

0

您的第一行将导致错误,因为EmpViewModel()仅在您的 ready 函数中定义,但您试图将其称为全局。因此emp将是未定义的,并且您的分配OnTreeviewNodeSelect()也会导致错误。

另外,您ko.applyBindings至少要拨打两次电话;这将导致 Knockout 错误。

于 2013-10-16T04:17:06.070 回答