我正在尝试在加载时永久更新jqgrid中的单元格.我知道我可以使用,setCell但只更新该页面的值.如果我没有明确地setCell为单元格执行另一个单元格,则返回页面,显示旧值.我也尝试过setRowData,但似乎做了同样的事情.我正在使用的loadonce方法是1)加载数据2)根据一些标准修改数据的几个值3)显示修改后的值.我正在使用loadonce不应该在这个会话中有永久修改单元格的方法吗?
更新:
放入我没有给出错误但是没有遍历所有数据的代码:
var set = 0;
....
gridComplete: function(data){
setData();
},
....
beforeRefresh: function(data){
set = 0;
},
....
function setData(){
if(set == 1) return;
... //create hash up here
var dataArray = jQuery("#grid").jqGrid('getGridParam', 'data');
var j = 1;
for (var rows in dataArray) {
var key = dataArray[rows].name;
dataArray[rows].level = hashTable[key];
j++;
}
alert(j);
}
Run Code Online (Sandbox Code Playgroud)
这不是循环遍历本地加载的数组中的所有项目.例如,如果页面大小设置为30,则alert(j)返回30,尽管我在本地加载了多少项目.但是,如果我刷新图形,则j是正确的数字.为什么getGridParam的行为在每种情况下都不同?
我正在尝试让我的子网格使用本地数据.但是,当我单击展开时,我只是得到一个加载框,就像网格试图从某个地方提取数据一样.我假设我不需要a,subGridUrl因为主网格的数据类型是datatype:'local'.还有什么我应该做的吗?
我正在使用带子网格配置的jqGRid来显示我的数据.我想有全局展开和折叠按钮来显示或隐藏所有子网格信息.jqGrid库是否以任何方式提供此功能?
我需要一些关于如何在以下sceaniro中实现子网格的想法.
以下是我想在JQuery Grid和Subgrid中显示的json数据.基本上我得到一个名为"Contact"的对象,它有一个名为"actionSet"的集合.
{
"total" : "10",
"page" : "1",
"records" : "78",
"rows" : [ {
"comment" : null,
"givenName" : "Contact A",
"familyName" : "A",
"actionSet" : [ {
"actionID" : 1,
"actionDueDate" : "2012-12-08",
"actionNote" : "Action 1"
}, {
"actionID" : 2,
"actionDueDate" : "2012-12-08",
"actionNote" : "Action 2"
} ]
} ...]
}
Run Code Online (Sandbox Code Playgroud)
我希望eache Grid行显示"Contact",与网格关联的subgris应显示"actionSet"集合.
当选择网格中的特定行时,我不想进行服务器调用以获取关联的操作,因为它们已经存在于"actionSet"中.
我有网格工作,很好地显示"联系人",但我在实现子网格时感到困惑,因为如何获取数据,因为它已经在json中可用.
jq(function() {
jq("#grid").jqGrid({
url:'/smallworks/project/getall.do',
datatype: 'json',
mtype: 'GET',
colNames:['Id', 'First Name', 'Last Name'],
colModel:[
{name:'id',index:'id', width:55,editable:false,editoptions: {readonly:true,size:10},hidden:true},
{name:'givenName',index:'givenName', …Run Code Online (Sandbox Code Playgroud)