我有一个Jqgrid,其数据类型为local。我在运行时使用addRowData,setCell加载数据。每件事都很有效。请注意,我没有将整个数据加载到网格中,因此网格不知道有多少页面。我的服务器返回我需要将它设置到网格的计数。文档说lastpage是ReadOnly?如何将我的最后一页(页数)设置为网格?有什么建议。 谢谢, 萨拉
答案 0 :(得分:2)
使用addRowData
方法填充jqGrid是填充jqGrid中数据的最旧和最无效的方法。问题很简单。如果在页面上放置元素,则必须重新计算页面上所有其他元素的位置。它创建了Web浏览器的许多资源。在一步中填充整个jqGrid体更有效,特别是对于大量插入的行。确实只需要在很少的情况下使用addRowData
方法。
使用jqGrid的data
参数会更有效,它允许用数据填充网格,对数据进行排序sortname
和sortorder
并显示第一页rowNum
定义每页的行数。另外,应该不使用afterInsertRow
回调并使用gridview: true
。在填充jqGrid是最有效的情况下。
网格的页数将根据网格中的行数自动计算 。仅当您使用服务器端 datatype
('json'
或'xml'
)时,客户端部分才知道总页数,因此必须填写输入数据total
,page
和records
以及主要数据(请参阅documentation)。如果使用低级方法addJSONData
,则可以使用数据填充网格,并仍然将total
,page
和records
设置为您想要的任何值。
您可以在某些情况下使用的另一种方法是datatype: 'jsonstring'
。数据可以作为datastr
选项的值放置。顺便说一下,datastr
的值不仅必须是JSON字符串,还可以是对象。