0
HTML敲除不保存/檢測到更改
<div class="infoview-details" data-bind="foreach: Container">
@* <span data-bind="text: sub().sub_name" ></span>*@
<div class="row-fluid">
<div class="span3">
<span data-bind="visible: sub().interval_from"><input type="text" data-bind="value: sub().interval_from" /></span>
<span data-bind="text: sub().limitTypeSymbol" ></span>
<span data-bind="visible: sub().interval_to"><input type="text" data-bind="value: sub().interval_to" /></span>
<span data-bind="visible: sub().value"><input type="text" data-bind="value: sub().value" /></span>
<a class="btn btn-primary"data-bind="click: $parent.loadNewTestValidation">Update</a>
</div>
</div>
<hr />
</div>
<a class="btn btn-primary"data-bind="click: saveValidation">Save</a>
視圖模型
function baseAppViewModel() {
var self = this;
self.Container= ko.observableArray([]);
self.saveValidation = function (data) {
app.ajax.post({
url: app.url() + 'api/base/save/' + self.id(),
data: ko.toJS(data.Container),
done: function() {
self.load(self.id());
}
});
};
模型1
function Container(data) {
var self = this;
self.sub= ko.observable(new sub(data.sub));
}
模型2
function sub(data) {
var self = this;
self.id = ko.observable(data.id);
self.type_output_id = ko.observable(data.type_output_id);
self.output_type_id = ko.observable(data.output_type_id);
self.validation_name = ko.observable(data.validation_name);
self.limit_type = ko.observable(data.limit_type);
self.value = ko.observable(data.value);
self.interval_from = ko.observable(data.interval_from);
self.interval_to = ko.observable(data.interval_to);
}
當我更改和更新時,我從輸入中獲得新值,但是如果添加新值並保存,我不會。
當我保存我甚至沒有得到發送到淘汰賽的xhr請求中的數據。 因此,在html代碼中必須有錯誤,但我沒有任何想法。 有什麼建議嗎?
請在問題中添加更多上下文,並具體說明發生錯誤或預期行爲失敗的位置。否則,我們將不得不遍歷您的代碼來查找問題。如果可以的話,創建一個可用的JSFiddle。 – Tanner