使用静态数据加载jqGrid的最佳方法?
我们通过创建一个JSON字符串将10行静态数据加载到我们的jqGrid中:
var d = "{\"page\":1,\"records\":10,\"total\":1,\"rows\":[" + "{\"id\":\"1\",\"cell\":[\"\"]}," + "{\"id\":\"2\",\"cell\":[\"\"]}," + "{\"id\":\"3\",\"cell\":[\"\"]}," + "{\"id\":\"4\",\"cell\":[\"\"]}," + "{\"id\":\"5\",\"cell\":[\"\"]}," + "{\"id\":\"6\",\"cell\":[\"\"]}," + "{\"id\":\"7\",\"cell\":[\"\"]}," + "{\"id\":\"8\",\"cell\":[\"\"]}," + "{\"id\":\"9\",\"cell\":[\"\"]}," + "{\"id\":\"10\",\"cell\":[\"\"]}" + "]}";
并使用datatype:jsonstring
将其加载到网格中datatype:jsonstring
和datastr:d
其中我们的网格有15列,每列使用自定义格式化程序创建。
有一个更好的方法吗?
对应文档 (参见data
参数说明)
它可以替代相对大数据速度慢的addRowData方法
我自己没有采取任何措施,但data
参数的使用似乎也是我最有效的方法之一。 重要的是要添加多少行数据 。 参数datastr
与datatype:jsonstring
一起使用datatype:jsonstring
是在版本3.7中引入数据的本地分页之前存在的相对较旧的方式。 关于data
参数,您可以添加大量纯数据,对其进行排序并显示数据的第一页。 使用addJSONData
参数中的数据填充第一页,因此在所有情况下,部分工作都是相同的。 只有填充大小更重要的数据作为页面大小才能使data
参数更有效。
如果要使用data
参数,则不要忘记在数据数组中定义其他id
属性。 它可以是具有默认id
名称的属性,也可以是localReader
定义的其他名称。 如果为jqGrid的一列定义了key:true
,则不需要包含其他id
属性。
答案是: 是的
怎么样? 渲染一个常规表,然后使用名为“grid.tbltogrid.js”的Jqgrid插件。 非常有用和简单。 在内部它使用jqgrid的“addRowData”方法,但为什么需要重复编写代码,对吧? ;)