简单的jQuery SlickGrid JSON示例或文档

时间:2011-02-13 12:38:34

标签: jquery ajax json slickgrid

我正在寻找一个关于如何在尝试通过jQuery.Ajax将数据检索为JSon时如何使用SlickGrid的简单示例。 我也无法找到SlickGrid插件的任何文档,并想知道我是否只是在寻找错误的地方。 任何让我开始使用SlickGrid的帮助都会非常感激。

4 个答案:

答案 0 :(得分:13)

SlickGrid存储库中的AJAX示例非常复杂,因为它试图通过缓存等方式变得棘手。例如,它会跟踪已发送的所有行,并且只会从服务器请求新行。它也是Digg故事的具体例子的硬编码。文档非常缺乏,而且jQuery版本1.5+(它改变了ajax的处理方式)似乎有些错误。

通过使用SlickGrid的Andrew Childs fork,我可以更轻松地开始使用,其中包含有关如何在README底部使用AJAX的非常简单直接的说明:

存储库位于https://github.com/andrewchilds/SlickGrid

答案 1 :(得分:6)

asp.net页面中的一个示例。 webservice myData返回一个需要匹配网格列的json字符串。

$(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);

......等等


在Asp.Net中,默认情况下限制json字符串的大小。如果遇到问题,您必须在web.config中声明更大的尺寸,例如:

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

答案 2 :(得分:2)

看看这个example

如果SlickGrid缺少示例,请查看jqgrid

答案 3 :(得分:0)

解决方案很简单,但他们没有明确说明如何在他们的维基页面上执行此操作。

SlickGrid希望JSON处于对象形式。因此,如果出于任何原因它只是使用字符串形式:

JSON.parse(jsonString);

如果您从ajax加载,只需执行此操作:

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