UI使用knockout js中的observable属性进行更新

时间:2015-04-22 06:03:42

标签: javascript jquery knockout.js

我想在更改视图模型的observable属性时更新UI。

ViewModel是:

 function UserViewModel() {
        var self = this;       
        self.name = ko.observable("Test User")
    }

在按钮点击时声明对象并更新observable属性

 var userViewModel = {};
        $("#button").click(funtion(){
          userViewModel.name("Test");
        })

在视图模型上应用绑定

$(funtion(){
            userViewModel = new UserViewModel();
            ko.applyBindings(userViewModel); 
})

和视图是

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

<span data-bind="text:name()"></span>

谢谢,请建议。

1 个答案:

答案 0 :(得分:1)

您已走上正轨,但我建议使用敲除绑定来处理点击,而不是使用jQuery。

function UserViewModel() {
    var self = this;
    self.name = ko.observable("Test User");
    self.update = function() {
        self.name("Test");
    };    
}

ko.applyBindings(new UserViewModel());


<span data-bind="text:name"></span>
<button data-bind="click: update">Update</button>

这是fiddle