私はノックアウトjsで新しく、ここで何かを理解していないかもしれないと感じています。私は基本的に、チェックされると、他のフィールド計算に依存する別のフィールドを更新するMVCチェックボックスを持っています。私は、チェックボックス以外のすべてのフィールドに関してアップデートする総量フィールドを得ることができます。私は何が間違っているのか分かりません。私はそれがself
を渡していないからだと思っていますが、最終的な式の条件付き値をどのように渡すのかはわかりませんが、どうしてこのようになるのでしょうか。たぶん、誰かがこれについていくつかの光を当てるかもしれない。チェックボックスが値を更新しないノックアウトjs
計算に変数を使用して最終変数を返すと、初期値は正しく表示されますが、最終的なフィールド更新が行われないことに気付きました。このような場合には理由があるのでしょうか、あるいは私は何か間違っているのでしょうか?ここで
私は
<div class="form-group-sm">
<label for="bookingType">International Property</label>
<div class="checkbox">
@Html.EditorFor(model => model.IsInternationalProperty, new { @id = "internationalProperty", @value = true, @data_bind = "checked: internationalProperty" })
<label style="width: 200px; text-align: left">Select if it is outside the US</label>
</div>
</div>
そして、ここを使用していますチェックボックスマークアップであることは私のknockoutjsあなたはmemberBalanceの内側international
変数の計算を配置する必要がありモデル
var viewModel = function (data) {
var self = this;
self.internationalProperty = ko.observable();
self.vendorBookingAmount = ko.observable(2.00);
self.transactionFeesDue = ko.observable(0.00);
self.transactionFeesWaived = ko.observable(0.00);
self.iceBookingFees = ko.observable(0.00);
self.vacationCashRedeemed = ko.observable(0.00);
self.pointsDiscount = ko.observable(0.00);
debugger;
var international = (self.internationalProperty() == true) ? 0.05 : 0;
self.memberBalance = ko.computed(function() {
return (Number(self.vendorBookingAmount()) + Number(self.transactionFeesDue()) -
Number(self.transactionFeesWaived()) + Number(self.iceBookingFees()) -
Number(self.vacationCashRedeemed()) - Number(self.pointsDiscount())) +
(Number(self.vendorBookingAmount()) + Number(self.transactionFeesDue()) -
Number(self.transactionFeesWaived()) + Number(self.iceBookingFees()) -
Number(self.vacationCashRedeemed()) - Number(self.pointsDiscount()))*international;
}, self);
};
ko.applyBindings(new viewModel());
hmmm、まだ動作していないようです。 @Voyta、私に含める必要がある更新バインディングはありますか?テキストボックスの場合、 'valueUpdate: 'afterkeydown''を入れます。チェックボックスにも同様のバインディングがありますか? – Jand
更新された回答を参照 – Voyta
それは働いた!ありがとうございました! – Jand