KnockOut脚本不更新输入

时间:2014-01-21 14:03:28

标签: knockout.js

您好我的简单脚本没什么问题。我有一个按钮,当按下时应该在输入中写入一些东西与敲除ViewModel绑定。

但是为了不知道我的原因我的代码正在更新observable,但输入仍为空。

这是我的HTML代码:

<div class="col-lg-3">
    <div class="input-group">
        <span class="input-group-addon">User</span>
        <input type="text" class="form-control" data-bind="text:DeviceUser" required name="User" id="User" />
    </div>
</div>
<div class="col-lg-2">
    <div class="input-group">
        <button class="btn btn-default" type="button" id="UserClick" data-bind="event:{click: click}">Add me as a user</button>
    </div>
</div>

和脚本:

var ViewModel = function () {
    var self = this;

    self.DeviceUser = ko.observable();

    self.click = function () {
        var temp = "NewValue";
        self.DeviceUser(temp);
        alert(self.DeviceUser())
    }
};

var model = new ViewModel();
ko.applyBindings(model);

任何人都可以告诉我应该改变什么才能让它发挥作用?

您可以在JSFiddle

查看实时样本

1 个答案:

答案 0 :(得分:2)

您使用无效绑定进行输入。它应该是value,而不是text

<input type="text" class="form-control" data-bind="value:DeviceUser" required name="User" id="User" />