Jquery jqGrid是否在不刷新整个列的情况下更新特定列数据?

Jquery jqGrid是否在不刷新整个列的情况下更新特定列数据?,jquery,jqgrid,Jquery,Jqgrid,我正在我的项目中使用jqGrid。我希望在不刷新整个网格的情况下更新/刷新特定列数据。请给我一些想法 这里有一个可能的解决方案。您可以使用jqgrid中的“setCell”设置列中特定单元格的值。请看这里的小提琴: 我希望上面的小提琴能给你完成任务的想法 <table id="sg1"></table> <div id="psg1"></div> <br> <button type="button" id="setcolumnbt

我正在我的项目中使用
jqGrid
。我希望在不刷新整个网格的情况下更新/刷新特定列数据。请给我一些想法

这里有一个可能的解决方案。您可以使用jqgrid中的“setCell”设置列中特定单元格的值。请看这里的小提琴:

我希望上面的小提琴能给你完成任务的想法

<table id="sg1"></table>
<div id="psg1"></div>
<br>
<button type="button" id="setcolumnbtn">Update 'amount' Column</button>

jQuery("#sg1").jqGrid({
    datatype: "local",
    gridview: true,
    loadonce: true,
    shrinkToFit: false,
    autoencode: true,
    height: 'auto',
    viewrecords: true,
    sortorder: "desc",
    scrollrows: true,
    loadui: 'disable',
    colNames:['Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'],
    colModel:[
        {name:'id',index:'id', width:60, sorttype:"int"},
        {name:'invdate',index:'invdate', width:90, sorttype:"date"},
        {name:'name',index:'name', width:80},
        {name:'amount',index:'amount', width:80, align:"right",sorttype:"float"},
        {name:'tax',index:'tax', width:80, align:"right",sorttype:"float"},     
        {name:'total',index:'total', width:80,align:"right",sorttype:"float"},      
        {name:'note',index:'note', width:150, sortable:false}       
    ],
    caption: "Test Grid"
});

var mydata = [
        {id:"1",invdate:"2007-10-01",name:"test 1234567890123456789",note:"note",amount:"200.00",tax:"10.00",total:"210.00"},
        {id:"2",invdate:"2007-10-02",name:"test2",note:"note2",amount:"300.00",tax:"20.00",total:"320.00"}
        ];

for(var i=0;i<=mydata.length;i++)
    jQuery("#sg1").jqGrid('addRowData',i+1,mydata[i]);


//button event
$('#setcolumnbtn').on('click', function(){
var newAmount = [111,222];
 var existingRowIds = jQuery("#sg1").jqGrid('getDataIDs');

$.each(existingRowIds, function (j, existingRowId) {
    jQuery("#sg1").jqGrid('setCell', existingRowId, 'amount', newAmount[j]);
});


更新“金额”列 jQuery(“#sg1”).jqGrid({ 数据类型:“本地”, gridview:没错, 有一次:是的, shrinkToFit:错, 自动编码:正确, 高度:“自动”, viewrecords:是的, 巫师:“描述”, 是的, loadui:“禁用”, colname:['Inv No','Date','Client','Amount','Tax','Total','Notes',], colModel:[ {名称:'id',索引:'id',宽度:60,排序类型:“int”}, {名称:'invdate',索引:'invdate',宽度:90,排序类型:“date”}, {名称:'name',索引:'name',宽度:80}, {名称:'amount',索引:'amount',宽度:80,对齐:“right”,排序类型:“float”}, {名称:'tax',索引:'tax',宽度:80,对齐:“right”,排序类型:“float”}, {名称:'total',索引:'total',宽度:80,对齐:“right”,排序类型:“float”}, {名称:'note',索引:'note',宽度:150,可排序:false} ], 标题:“测试网格” }); var mydata=[ {id:“1”,invdate:“2007-10-01”,name:“test 12345678900123456789”,note:“note”,amount:“200.00”,tax:“10.00”,total:“210.00”}, {id:“2”,invdate:“2007-10-02”,name:“test2”,note2,amount:“300.00”,tax:“20.00”,total:“320.00”} ];
对于(var i=0;iDid),我在回答部分提供的解决方案是否适用于您?