2013-04-07 64 views
0

我想更新实时功能点击Jqgrid数据更新但不更新数据。Jqgrid数据更新上的实时功能点击但没有更新数据

我试过 jQuery('grid')。jqGrid('clearGridData'); jQuery('grid')。jqGrid('setGridParam',{data:dataToLoad}); ('grid')。trigger('reloadGrid');

也在这里是我的网标准它是一个函数,我调用这个函数为每个buttun点击

jQuery("#procedureResultGrid").jqGrid({ 
     loadonce:false, 
    rowList : [ 10, 20, 50,100 ], 
     data : jsonText, 
     datatype : 'local', 
     gridview: true, 
     rowNum : 10, 
     width : '100%', 
     height : 'auto', 
     colModel : [{ 
      name : 'name', 
      sortable:false, 
      width : 130, 
      classes: "col1" 
     },{ 
      name : 'rowv_1', 
      formatter: valueFormatFunctionFirst, 
      width : 60, 
      sortable:false 
     } 
     ,{ 

      name : 'row1', 
      width : 25, 
      formatter: calculatedFormatFunctionFirst, 
      classes: "imageValue" 


     },{ 

      name : 'row4', 
      width : 50, 
      formatter: calculatedPersendFunctionFirst, 
      classes: "persendValue" 

     },{ 
      name : 'rowv_2', 
      formatter: valueFormatFunctionSecond, 
      width : 60, 
      sortable:false 
     } 
     ,{ 

      name : 'row3', 
      width : 25, 
      formatter: calculatedFormatFunctionSecond, 
      classes: "imageValue" 

     },{ 

     name : 'row4', 
     width : 50, 
     formatter: calculatedPersendFunctionSecond, 
     classes: "persendValue" 
    } 
     ,{ 
      name : 'rowv_3', 
      width : 60, 
      formatter: valueFormatFunctionThird, 
      sortable:false 
     } 
     ,{ 

      name : 'row5', 
      width : 25, 
      formatter: calculatedFormatFunctionThird, 
      classes: "imageValue" 

     },{ 

     name : 'row6', 
     width : 50, 
     formatter: calculatedPersendFunctionThird, 
     classes: "persendValue" 

    } 
     ,{ 
      name : 'rowv_4', 
      formatter: valueFormatFunctionForth, 
      width : 60, 
      sortable:false 
     } 
     ,{ 

      name : 'row5', 
      width : 25, 
      formatter: calculatedFormatFunctionForth, 
      classes: "imageValue" 

     },{ 

     name : 'row6', 
     width : 50, 
     formatter: calculatedPersendFunctionForth, 
     classes: "persendValue" 

    },{ 
     name : 'rowv_4', 
     formatter: valueFormatFunctionYTD, 
      width : 60, 
      sortable:false 
     } 
     ,{ 

      name : 'row5', 
      width : 25, 
      formatter: calculatedFormatFunctionYTD, 
      classes: "imageValue" 

     },{ 

     name : 'row6', 
     width : 50, 
     formatter: calculatedPersendFunctionYTD, 
     classes: "persendValue" 

    } 
     ], 
     pager : jQuery('#pager'), 
     afterInsertRow: function (rowid, rowdata) { 
    if(rowid%2==0) 
      $("#procedureResultGrid").jqGrid('setRowData', rowid, false, { background: '#F2F2F2' }); 
     else 
      $("#procedureResultGrid").jqGrid('setRowData', rowid, false, { background: 'white' }); 
     } 

    }); 

    $("#procedureResultGrid").fluidGrid({ 
     base : "result-grid", 
     offset : -20 
    }); 

    $("#pager").show(); 
      $("#procedureResultGrid").setGridParam({datatype:'local',sortname:'values.aggregate.'+totalCostIndex+'.data.'+addKeyYear(keyYear), sortorder: 'desc'}).trigger('reloadGrid'); 

我也尝试排序它也不能正常工作。

+0

在GridView中的'情况:TRUE'回调'afterInsertRow'将不会被使用。你最好使用'rowattr'或'cellattr'。请参阅[答案](http://stackoverflow.com/a/10531680/315935)和[这一个](http://stackoverflow.com/a/6048865/315935)。 – Oleg 2013-04-07 09:37:07

回答

0

我只是说从创建网格和

$("#procedureResultGrid").GridUnload(); 

然后

$("#procedureResultGrid").trigger('reloadGrid'); 

工作对我罚款..

感谢