onselectcell getcell example editable jquery jqgrid load

jquery - getcell - jqGrid: ¿cómo configurar la cuadrícula para NO cargar ningún dato inicialmente?



methods jqgrid (3)

No establezca la URL cuando inicialice la cuadrícula. Configure la URL justo antes de cargar la cuadrícula con la función setGridParam.

Esto funciona para mi.

¿Cómo puedes crear una grilla pero no cargar ningún dato?

Si loadError la opción url , se loadError devolución de llamada loadError .

Actualmente establecemos url:NoData.json donde NoData.json es un archivo estático sin filas.

El problema está en nuestra devolución de llamada de carga completa que nos gustaría mostrar un mensaje si la cuadrícula no contiene datos, excepto que no queremos mostrar este mensaje en la carga inicial. Actualmente manejamos esto de la siguiente manera:

//jqGrid load complete handler function loadComp(grid) { if (grid.getGridParam("url") != "NoData.json" && grid.getGridParam("records") == 0) { setStatus("Your search did not return any results"); } }

Esto parece un poco pirateado ... quisiera que la cuadrícula no cargara ningún dato inicialmente.

¿Algunas ideas?


Quería crear una cuadrícula que no carga datos cuando la página está cargada, pero carga datos, cuando el usuario hace clic en actualizar o utiliza la búsqueda. Mi solución es un poco complicada pero es muy fácil y funciona bien.

Estoy utilizando el evento de devolución de llamada loadBeforeSend para detener la solicitud de datos ajax cuando se carga la página. Mi función de devolución de llamada se elimina a sí misma por lo que se ejecutará solo una vez.

loadBeforeSend: function (xhr, settings) { this.p.loadBeforeSend = null; //remove event handler return false; // dont send load data request }


Solo debes usar el datatype: ''local'' inicialmente. En el momento en que necesita cargar los datos, debe cambiar el datatype de datatype a json o xml :

$("#list").jqGrid(''setGridParam'',{datatype:''json''}).trigger(''reloadGrid'');