这是我想要建立的(贷款利息计算器)的极端简化。我有三个领域。每当一个场被改变时,我希望其他场改变以满足这个代数方程:
A = B * C
B = A / C
C = A / B
我想我想将这些值绑定到一个对象,但我不确定如何解决这个问题。这是我到目前为止的设置:
var binder = {
a: 2,
b: 1,
c: 1
};
$('input[type=number]').on('change', function() {
var id = $(this).attr('id');
var value = id.val();
binder[id] = Number($(this).val());
});
此时我已将对象中的相应键设置为当前活动字段的值。我可以运行一堆case()
语句,如:
switch( id ) {
case a :
binder.b = $(this).val()/binder.c;
binder.c = $(this).val()/binder.b;
break;
etc.
}
我还需要更新字段值。这似乎是不可持续的,特别是当字段数量增加时,计算变得更加复杂。我的问题是双重的:
如何绑定字段'对象的值?
如何将对象的值彼此绑定?
答案 0 :(得分:0)
@dbugger评论knockoutjs非常适合这个
composer.json

var model = {
a: ko.observable(2),
b: ko.observable(1),
c: ko.observable(1)
};
ko.applyBindings(model);