因为项目的需求,需要在grid中加载数据后再在前端页面执行操作,所以在easyui中的grid与jqgrid都进行了测试和操作;
eayui中grid数据的操作:
//构造集合对象
var list = [];
var rows = $("#grid").datagrid("getRows");
for (var i = 0; i < rows.length; i++) {
list.push({
'Qfk_id': rows[i].Qfk_id
,'Qfk_code': rows[i].Qfk_code
,'Yz_name': rows[i].Yz_name
,'Yzlx_name': rows[i].Yzlx_name
,'Qfklx_name': rows[i].Qfklx_name
}); }
var postData = JSON.stringify(list);
jqgrid中数据的操作:
//构造集合对象
var list = [];
var ids = $('#grid').getDataIDs();//返回数据表的ID数组
for (var i = 0; i < ids.length; i++) {
var getRow = $('#grid').getRowData(ids[i]);//获取当前的数据行
list.push({
'Qfk_id':getRow.Qfk_id
,'Qfk_code': getRow.Qfk_code
,'Yz_name': getRow.Yz_name
,'Yzlx_name': getRow.Yzlx_name
,'Qfklx_name': getRow.Qfklx_name
});
}
var postData = JSON.stringify(list);
jqgrid中在前端修改数据:
var ids = $('#grid').getDataIDs();//返回数据表的ID数组
var len = ids.length;
for (var i = 0; i < ids.length; i++) {
var getRow = $('#grid').getRowData(ids[i]);//获取当前的数据行
//setcell修改值;i+1为修改行数;'weizhi'为列ID,value是要修改的值
$("#grid").jqGrid('setCell', i + 1, 'weizhi', value);
}
在使用过程中,当需要一次性加载所有数据且不允许使用分页的情况下,jqgrid确实要比easyui的grid性能好一些,当然不同浏览器也差别明显;