找了半天,发现网上没有一个讲jqgrid如何产生随机数的rowid的设置方法,自己就去研究了下源码。把方法写一下,以免遇到跟我一样的情况,不知道怎么办,浪费时间精力
主要就是jqgrid里初始化的时候可以配置Reader
我用到的是jsonReader;
jqgrid里默认的jsonReader
ts.p.jsonReader = $.extend(true,{
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: true,
cell: "cell",
id: "id",
userdata: "userdata",
subgrid: {root:"rows", repeatitems: true, cell:"cell"}
},ts.p.jsonReader);
这里的id,就是跟产生的rowid有关.默认的话一般会查看返回来json中有无id属性,如果有,就用返回过来的id作为rowid.
所以,要产生自己的rowid,我们就要自己去设置了
如果,我们返回过来的没有id属性,会默认用自增的rowid;
我们这里要用到随机数的rowid
就只需给id属性指定成一个随机函数就可以了
jQuery(selector).jqGrid({
jsonReader:{
id: function(obj){return parseInt(Math.random() * 10000000);}
}
});
这样,在渲染表格的时候,就能够指定rowid为随机生成的了
其他类型的reader,一般也就这样设置了吧,具体没弄,可以去找相关资料