我有以下业务需求:
有两个文本框,用户需要在其中输入他们的当前年龄和退休年龄。退休年龄需要大于当前年龄,因此如果用户输入的退休年龄小于当前年龄,则应将退休年龄更新为当前年龄,如果用户输入的当前年龄大于退休年龄,则必须将退休年龄设置为当前年龄。
有没有一种简单的方法可以使用knockout js来做到这一点?我假设我需要两个字段的计算观察值和某种后备存储区?
这是我的起点:http://jsfiddle.net/RVNHy/
js:
var viewModel = function() {
this.currentAge= ko.observable(32);
this.retirementAge = ko.observable(44);
};
ko.applyBindings(new viewModel ());html:
<div class='liveExample'>
<p>Current Age: <input data-bind='value: currentAge' /></p>
<p>Retirement Age: <input data-bind='value: retirementAge' /></p>
</div>发布于 2013-03-13 17:59:27
是的,这就是你想要的:
function MyViewModel() {
var self = this;
var age= ko.observable(32);
var retAge = ko.observable(44);
self.currentAge = ko.computed({
read: function () {
return age();
},
write: function (value) {
retAge(Math.max(value, retAge));
age(value);
},
owner: this
});
}并执行相同的操作来创建退休年龄的计算可观测值。
https://stackoverflow.com/questions/15381777
复制相似问题