La primera página de resultados con un jqgrid rowObject devuelve los datos esperados pero luego devuelve datos incompletos para páginas posteriores de resultados. ¿Por qué?jqGrid - rowObject incoherencias?
primera página de resultados: rowObject [3] será igual a "2"
páginas siguientes de los resultados: rowObject [3] será igual a "indefinido" y volver a la primera página de resultados también ahora igual "indefinido".
Información adicional y algo de código:
Con jqGrid, si se desea implementar un formateador personalizado que utiliza un parámetro llamado rowObject que contiene los datos de la fila. Así, por ejemplo, una fila de rowObject podría ser algo como:
["18", "133", "Betelguese", "3", "photo.jpg", "", "0", ""]
Así que mi formateador personalizado utiliza algunos de estos datos para preparar un enlace de la siguiente manera:
var newval = '<a href="/proj/' + rowObject[3] + '/images/' + imgval + '">' + imgval + '</a>';
y esto me da una URL como :
<a href="/proj/3/images/photo.jpg">photo.jpg</a>
Hasta ahora todo bien. Mi problema es que cuando voy a la siguiente página de resultados en la jqGrid pierdo algunos de estos datos y sale:
<a href="/proj/undefined/images/photo.jpg">photo.jpg</a>
Si se me carga la página con todos los resultados que se muestra todo funciona bien, sin embargo si use paginación, solo la primera página de resultados tendrá el valor correcto para rowObject [3], mientras que cualquier otro resultado en páginas subsiguientes no tendrá ese valor de rowObject.
¿Por qué rowObject contiene los datos correctos en lo que se carga inicialmente en la cuadrícula y parece perder esos datos cuando aparece la página siguiente de los resultados de la cuadrícula?
Una cosa que estoy viendo en Firebug que no entiendo ... cuando la página inicialmente cargas consigo:
console.log(rowObject);
["18", "133", "Betelguese", "3", "photo.jpg", "", "0", ""]
En la siguiente página de resultados, cuando las cosas dejan de funcionar como espero , Veo
console.log(rowObject);
Object { photo_id="18", site_id="133", more...}
¿Por qué el cambio? El primer resultado es json, entonces, ¿por qué ahora obtengo este objeto?
Muy útil ... ¡¡¡Gracias !!! –
@AshishJain: ¡De nada! Me alegra que la respuesta, que tiene más de 3 años, todavía sea real y pueda ayudar. – Oleg
@Oleg Tengo el mismo problema. No importa si defino loadonce: verdadero o no. Tan pronto como procedo a la segunda página, los identificadores quedan indefinidos. Cuando accedo a $ ("# list"). JqGrid ('getGridParam', 'data') ya no tengo ninguna identificación (incluidas las de la primera página). Mi pregunta es: funciona cuando defino un objeto externo, tal como sugirió (y le agradezco la solución), pero ¿no es una 'solución alternativa'? –