El siguiente código crea una tabla de datos con los datos que identifican a los usuarios y las empresas para las que han trabajado.
for (var number = 0; number < users.length; number++) { var one_row = new Array(); one_row.push("<br>" + userData); rows_builder.push(one_row); getUserCompaniesNames(id, number); } function getUserCompaniesNames(id, number) { getUserCompanies(id).done(function(userCompanies) { var result = JSON.parse(userCompanies); if (result != null) { var text = ""; for (var i = 0; i < result.length; i++) { text += "<u>" + result[i].name_company + "</u>"; } $('.myclass' + number).append(text); } }).fail(function(err) { console.log(err); }); }Funciona bien excepto por esto: cuando uso la paginación y paso de la primera página de 10 resultados a la siguiente, pierdo la información generada por la función getUserCompaniesNames.
Creo que el problema está aquí:
$('.myclass' + number).append(text);Y lo único que se me ocurre es crear una matriz global y agregar justo debajo:
$('.myclass' + number).append(text);Este:
myGlobalArray.push(text); // declared var myGlobalArray = new Array(); in the first line of my codePero cuando compruebo myGlobalArray fuera de la función, aparece vacío. Entiendo que la función tarda más en ejecutarse, pero no sé cómo solucionar todo esto y tengo la información de getUserCompaniesNames en la tabla de datos cuando uso la paginación.
¡Gracias por adelantado!