简体   繁体   English

使用敲除js中的observable属性更新UI

[英]UI Updating using observable property in knockout js

I want to update UI when changes the observable property of view model. 更改视图模型的observable属性时,我想更新UI。

ViewModel is: ViewModel是:

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

Declaring object and updating observable property on button clicks 在单击按钮时声明对象并更新可观察的属性

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

Apply binding on view model 在视图模型上应用绑定

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

and View is 和视图是

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

or 要么

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

Thanks, Please suggest. 谢谢,请提出建议。

You're on the right track, but I would recommend handling the click with a knockout binding, instead of using jQuery. 您的工作方向正确,但我建议您使用敲除绑定而不是使用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>

Here is a fiddle 这是一个小提琴

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM