HTML-диалог с привязкой к данным правильно отображает динамические данные в первый раз, но всегда показывает то же самое при каждом вызове
У меня есть HTML-диалог на главной странице:
<div id="dlgCurAccum" title="Accumulators">
<div class="form-horizontal">
<div class="scrollable">
<div id="accumListDiv">
<div id="divAccumulators" class="divAccum" rv-each-accum="accumList" rv-id="accum.Accumulator">
<label class="accumRemove"> ({accum.Accumulator})</label><input type="checkbox" class="accumRemove" rv-data-accum="accum.Accumulator" />
</div>
</div>
</div>
</div>
</div>
Представления и модели определяются как:
var model = {
CoveredEntities: [],
productExceptionList: [],
accumList:[]
}
var views = {
coveredEntities: null,
tblProductException: null,
accumList:null
}
У меня есть обработчик событий, который реагирует на щелчок по таблице данных, извлекает информацию, вызывает контроллер для получения данных и связывает данные через rivets.bind. Данные, возвращаемые контроллером, всегда верны.
function onShowAccumulators(target) {
var row = $(target).closest("tr")[0];
var rowData = views.tblProductException.row(row).data();
model.accumList.length = 0;
$.getJSON("/OrderPrefsMgmt/GetCurAccumulators?ceid=" + $("#coveredEntities").val() + "&ndc=" + rowData.NDC)
.done(function (data) {
console.log($("#coveredEntities").val())
console.log(rowData.NDC);
console.log(data);
$.extend(true, model.accumList, data);
rivets.bind($("#accumListDiv"), { accumList: model.accumList });
ShowDialogCurAccum();
showBusy(false);
})
.fail(function (xhr, status, err) {
showError("Get Product Exceptions", errStr(err, xhr));
showBusy(false);
});
}
И я показываю диалог через:function ShowDialogCurAccum() {
// Using jQuery to open a dialog
$("#dlgCurAccum").dialog({
modal: true,
title: 'Selected Accumulators',
minWidth: 1050,
resizable: true,
buttons: {
Ok: function () {
$(this).dialog('destroy');
}
}
});
}
Независимо от того, какие данные сейчас, он всегда показывает первый список:
Как очистить динамические данные и по-прежнему иметь возможность отображать правильные данные во время последующих вызовов диалога?