這裏是我想要做的jsfiddle:添加2個數字,然後減去的數字視複選框
我有點卡住了,因爲我發現,你可以」 t輸入到一個依賴的observable中並讓它更新。基本上你有2個數字。你將它們加在一起4 + 5 = 9。現在,當你點擊一個複選框(或者如果可以不用複選框的話),你可以禁用第二個數字(5),並啓用輸入到最終數字(9)。所以你可以輸入9的最後一個框,forumla會做9 - 4,那會給你第二個數字。因此,您可以將9更改爲10,這將是10 - 4 = 6.
// Here's my data model
var viewModel = {
firstNum : ko.observable(4),
lastNum : ko.observable(5),
reverse : ko.observable(false)
};
viewModel.add = ko.dependentObservable(function() {
return parseInt(viewModel.firstNum()) + parseInt(viewModel.lastNum());
});
ko.applyBindings(viewModel); // This makes Knockout get to work
<p>First Number: <input data-bind="value:
firstNum , valueUpdate:'afterkeydown'" /></p>
<p>Next Number <input data-bind="value: lastNum, valueUpdate:'afterkeydown', disable : reverse" /></p>
<p>Last Number:<input data-bind="value: add, valueUpdate:'afterkeydown', enable : reverse" /></p>
<p>Subtract : <input type="checkbox" data-bind="checked: reverse" ></p>
<br />
<p data-bind="text: ko.toJSON(viewModel)"></p>
謝謝!大的幫助。 –