2011-02-13 12 views
12

Estoy buscando un ejemplo simple sobre cómo usar SlickGrid cuando trato de recuperar los datos como JSon a través de jQuery.Ajax. Tampoco pude encontrar ninguna documentación del complemento SlickGrid y me preguntaba si estaba buscando en los lugares equivocados. Me agradecería cualquier ayuda para comenzar a utilizar SlickGrid.Ejemplo o documentación JQuery SlickGrid JSON simple

Respuesta

6

Un ejemplo dentro de una página asp.net. El servicio web myData devuelve una cadena json que debe coincidir con las columnas de la cuadrícula.

$(function() { 

     $.ajax({ 
      url: "WS.asmx/myData", 
      global: false, 
      type: "POST", 
      data: "{}", 
      contentType: "application/json", 
      dataType: "json", 
      async: false, 
      success: function (json) { 
       data = eval('(' + json.d + ')'); 
       if (!data) { alert('no data'); }; 
      }, 
      error: function (msg) { 
       var errorText = eval('(' + msg.responseText + ')'); 
       alert('Error : \n--------\n' + errorText.Message); 
      } 
     } 

     ); 

if (data) { 
    dataView = new GridNic.Data.DataView(); 
    grid = new GridNic.Grid($("#myGrid"), dataView.rows, columns, options); 
    var pager = new GridNic.Controls.Pager(dataView, grid, $("#pager"), columns); 
    var columnpicker = new GridNic.Controls.ColumnPicker(columns, grid, options); 

... y así sucesivamente


En Asp.Net, el tamaño de la cadena JSON está restringido por defecto. En caso de problemas, debe declarar un tamaño mayor en la página web.config, p. :

<system.web.extensions> 
    <scripting> 
    <webServices> 
     <jsonSerialization maxJsonLength="5000000"> 
     </jsonSerialization> 
    </webServices> 
    </scripting> 
</system.web.extensions> 
2

Echa un vistazo a este example.

Si a SlickGrid le faltan ejemplos, eche un vistazo a jqgrid.

+0

Desafortunadamente este ejemplo ya es bastante complejo y difícil de entender para un principiante. ¿Cómo podría, por ejemplo, implementar la devolución de llamada exitosa en la llamada $ .Ajax? ¿Hay alguna documentación disponible? ¡Gracias! – doberkofler

+0

¿Hay algún tipo de documentación para SlickGrid? – doberkofler

+0

La documentación es un poco deficiente en este momento, pero hay un amplio conjunto de ejemplos que demuestran las formas más efectivas de usar SlickGrid. Hay un grupo de soporte alojado por Grupos de Google. – gor

13

El ejemplo de AJAX en el repositorio de SlickGrid es bastante complejo, porque trata de complicarse con el almacenamiento en caché, etc. Por ejemplo, realiza un seguimiento de todas las filas ya enviadas y solo solicitará nuevas filas del servidor. También está codificado para el ejemplo específico de historias de Digg. La documentación falta mucho y parece fallar con las versiones 1.5+ de jQuery (que cambió cómo se manejó ajax).

tuve tiempo mucho más fácil empezar con Andrew Childs tenedor de SlickGrid, que contiene instrucciones muy simples y directas sobre el uso de AJAX en la parte inferior de la README:

El repositorio está en https://github.com/andrewchilds/SlickGrid

0

La solución es simple, pero no indican explícitamente cómo hacer esto en su página wiki.

SlickGrid espera que JSON esté en forma de objeto. Así que si por alguna razón, es en forma de cadena sólo tiene que utilizar:

JSON.parse(jsonString); 

Si va a cargar de Ajax, simplemente hacer esto:

$.getJSON("file.json", function(data) { 
    grid = new Slick.Grid("#myGrid", data, columns, options); 
}