0
私は編集できるテーブルを持っています。しかし、ページを変更してページを変更すると、編集された値が削除されます。ページを変更しても保存機能を呼び出そうとしましたが、うまく機能しません。
私は表のように持っている:ページングのページ変更を保存しても機能しません。値は保存されません
...
<table>
...
<th>
<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-show="!valueForm.$visible" ng-click="valueForm.$show()">
Edit
</button>
</span>
</div>
<form editable-form name="valueForm" onaftersave="$ctrl.saveColumn('valueTranlate')" ng-show="valueForm.$visible">
<button type="submit" ng-disabled="valueForm.$waiting" class="btn btn-primary">
Save
</button>
<button type="button" ng-disabled="valueForm.$waiting" ng-click="valueForm.$cancel()" class="btn btn-default">
Cancel
</button>
</form>
</th>
...
<tr dir-paginate="v in my array>
...
</table>
<dir-pagination-controls auto-hide="false" on-page-change="$ctrl.saveColumn()" boundary-links="true" max-size='7'></dir-pagination-controls>
...
my .js
saveColumn() {
if (this.$scope.valueForm.$visible) {
angular.forEach(this.langV, (value) => {
this.$http.patch('/api/dict_values/' + value.v_id, {
id: value.v_id,
value: value.value2,
user_id: this.currentUser()._id,
key_id: value._id,
lang_id: this.$scope.select2
});
});
this.showLang(this.$scope.select1, this.$scope.select2);
}
}
だから他のページの編集を、それがすべてのページにすべてのフィールドを反復処理し、値を保存saveColumn()
を呼び出すことではなく、「削除」しているため。ページの変更時にsave()
を呼び出してみましたが、値はsave()
より速く「削除」されます。
どのように私はすべてのページで編集することができますし、ページを変更すると値は忘れられませんか?