我有两个这样的模型
function CMRSerialsEditViewModel(data) {
var self = this;
this.CMRDeliverySerialId = ko.observable();
this.CMRSerialNumberFrom = ko.observable();
this.CMRSerialNumberTo = ko.observable();
this.Count = ko.computed(function () {
var numberfrom = Number(self.CMRSerialNumberFrom());
var numberTo = Number(self.CMRSerialNumberTo());
var result = numberTo - numberfrom;
return result;
});
this.CompanyName = ko.observable();
this.CarrierId = ko.observable();
this.CompanySelectItems = ko.observableArray();
this.ProductGroupId = ko.observable();
this.ProductGroupSelectItems = ko.observableArray();
self.LoadPrice = ko.observable();
ko.mapping.fromJS(data, {}, this);
this.LoadPriceFormatted = ko.computed({
read: function () {
return commonUtil.formatCurrency(self.LoadPrice());
},
write: function (value) {
value = parseFloat(value.replace(/[^\.\d]/g, ""));
self.LoadPrice(isNaN(value) ? 0 : value);
},
owner: self
});
};
还有一个是这样的:
var CMRDeliverySerialsViewModel = function () {
self.cmrSerial = ko.observable(new CMRSerialsEditViewModel());
}
在我看来,我有一个绑定到计数文件的输入文件。像这样:
<td>
<div class="editor-label">
<label for="CMRSerialEdit_Count">
تعداد
</label>
</div>
</td>
<td>
<div class="editor-field">
<input class="k-textbox " id="CMRSerialEdit_Count" name="CMRSerialEdit.Count"
data-bind="value:tisApp.CMRDeliverySerialsVM.cmrSerial().Count,valueUpdate: 'afterkeydown'"
data-val="true" data-val-required="اين فيلد را وارد کنيد" />
<span class="field-validation-valid" data-valmsg-for="CMRSerialEdit.Count"
data-valmsg-replace="true"></span>
</div>
</td>
一切都很好,但是当我输入 CMRSerialNumberFrom 字段和 CMRSerialNumberTo 字段时,计算了计数字段,但它没有绑定到我的视图。

一旦我在控制台中检查以下代码,它总是“0”:
tisApp.CMRDeliverySerialsVM.cmrSerial().Count