1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-03-26 06:50:09 +03:00

Bug #4301: Use fnGetDada instead of fnGetNodes to update an element of the datatable

fnGetNodes only retrieves the rows that are currently shown
This commit is contained in:
Daniel Molina 2016-02-17 16:31:23 +01:00
parent b57f36d620
commit 3d858ce094

View File

@ -497,20 +497,19 @@ define(function(require) {
}
//replaces an element with id 'tag' in a dataTable with a new one
function _updateElement(request, element_json) {
var id = element_json[this.xmlRoot].ID;
var element = this.elementArray(element_json);
var tag = '#' + this.resource.toLowerCase() + '_' + id;
// fnGetData should be used instead, otherwise it depends on the visible columns
var nodes = this.dataTable.fnGetNodes();
var tr = $(tag, nodes).parents('tr')[0];
if (tr) {
var checked_val = $('input.check_item', tr).prop('checked');
var position = this.dataTable.fnGetPosition(tr);
this.dataTable.fnUpdate(element, position, undefined, false);
$('input.check_item', tr).prop('checked', checked_val);
this.recountCheckboxes();
}
function _updateElement(request, elementJSON) {
var that = this;
var elementId = elementJSON[that.xmlRoot].ID;
var element = that.elementArray(elementJSON);
$.each(that.dataTable.fnGetData(), function(index, aData) {
if (aData[that.selectOptions.id_index] === elementId) {
element[0] = aData[0];
that.dataTable.fnUpdate(element, index, undefined, false);
that.recountCheckboxes();
return false;
}
});
}
function _getElementData(id, resource_tag) {