gpt4 book ai didi

knockout.js - 关于knockout js的数据绑定(bind)和值的变化

转载 作者:行者123 更新时间:2023-12-01 11:41:31 24 4
gpt4 key购买 nike

这里有两个文本框和一个跨度是通过 knockout 绑定(bind)的。我得到的例子很容易理解。这是代码。

<p>First name: <input data-bind="value: firstName" /></p>
<p>Last name: <input data-bind="value: lastName" /></p>
<h2>Hello, <span data-bind="text: fullName"> </span>!</h2>

var ViewModel = function(first, last) {
this.firstName = ko.observable(first);
this.lastName = ko.observable(last);

this.fullName = ko.computed(function() {
// Knockout tracks dependencies automatically. It knows that fullName depends on firstName and lastName, because these get called when evaluating fullName.
return this.firstName() + " " + this.lastName();
}, this);
};

ko.applyBindings(new ViewModel("Planet", "Earth"));

当代码运行时传递的任何值都会被反射(reflect)但是当我更改一个文本框值时更改的数据不会立即反射(reflect)当 keyup 发生但当焦点更改时更改的数据会反射(reflect)在 span 中.因此,如果我想更改 keyup 上的数据,那么请指导我,然后我需要更改代码。谢谢

最佳答案

你应该为此使用 valueUpdate 绑定(bind):

<p>First name: <input data-bind="value: firstName, valueUpdate: 'keyup'" /></p>
<p>Last name: <input data-bind="value: lastName, valueUpdate: 'keyup'" /></p>
<h2>Hello, <span data-bind="text: fullName"> </span>!</h2>

这是文档的链接:http://knockoutjs.com/documentation/value-binding.html

关于knockout.js - 关于knockout js的数据绑定(bind)和值的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20091271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com