我正在尝试将数据添加/编辑到我的JQGrid中。目前,第一列已填充,然后其他六列为空白,并且取决于第一列。所以我需要添加或“编辑空白”其他六列中的数据,而第一列保持不变。
现在我只是试图访问JQGrid来编辑我当前的数据。以下功能是我目前设置的功能。它会传递时间(第一列数据),欧姆数(进入网格的数据)和列名称。它构建我的数据集,然后尝试将其添加到rowid 0.这是硬编码只是因为我正试图让它立即工作。然后我访问JQGrid,添加rowdata,它实际上返回成功,但没有添加到JQGrid。
*注意 - 这都是在我的javascript文件中完成的
function AddRow(elapsedTime, numMOhms, mColumn)
{
switch(mColumn)
{
case 'a':
case 'A':
dataToAdd = [{TestTime:elapsedTime,RdgA:numMOhms,CorrA:"",RdgB:"",CorrB:"",RdgC:"",CorrC:""}];
break;
case 'b':
case 'B':
dataToAdd = [{TestTime:elapsedTime,RdgA:"",CorrA:"",RdgB:numMOhms,CorrB:"",RdgC:"",CorrC:""}];
break;
case 'c':
case 'C':
dataToAdd = [{TestTime:elapsedTime,RdgA:"",CorrA:"",RdgB:"",CorrB:"",RdgC:numMOhms,CorrC:""}];
break;
}
alert(JSON.stringify(dataToAdd));
var success = jQuery("#polarizationTable").jqGrid('setRowData',0,dataToAdd[0]);
if(success)
{
alert("y");
}
DrawGraph(true);
}
如果用这个替换最后一位:
for(var i=0;i<=dataToAdd.length;i++)
jQuery("#polarizationTable").jqGrid('addRowData',i+1,dataToAdd[i]);
我可以添加它,但它是一个愚蠢的添加,只是将数据追加到最后而不是更新该行中的数据。我尝试用硬编码修改它并删除for循环,但没有运气。
这是我的colModel / colNames的样子。
colNames:['Minutes','Reading A', 'Corr A', 'Reading B','Corr B','Reading C','Corr C'],
colModel:[
{name:'TestTime',index:'TestTime', align:"center", sortable:false},
{name:'RdgA',index:'RdgA', align:"center", sortable:false},
{name:'CorrA',index:'CorrA', align:"center", sortable:false},
{name:'RdgB',index:'RdgB', align:"center", sortable:false},
{name:'CorrB',index:'CorrB', align:"center", sortable:false},
{name:'RdgC',index:'RdgC', align:"center", sortable:false},
{name:'CorrC',index:'CorrC', align:"center", sortable:false}
],
答案 0 :(得分:1)
var success = jQuery("#polarizationTable").jqGrid('setRowData',1,dataToAdd[0]);
JQGrid的第一行是1,而不是0.去图。现在可以使用,只需要确定更新,同时保持剩余数据不变。