jqGrid - 如何计算列到jqgrid?

问题描述:

我正在一个ASP MVC 2 application.It有一个jqGrid和网格中的数据从控制器返回的JSON对象填充。我的网格有3列'UnitNo','Area'和'Rate per sqm'。这些列值是从数据库中回收的。现在我需要的是添加第四列“单价”,这是通过乘以“面积”和“每平方米的价格”计算出来的。我怎样才能做到这一点?有没有办法在jqGrid中添加一个计算列?或者,我可以在我的控制器中进行计算,并将其添加为行单元格的新元素?jqGrid - 如何计算列到jqgrid?

这里是我的控制器代码:

public JsonResult GetERVList() 
    { 
     var ervRep=new ERVRepository(); 
     IList<ERVMaster> list = ervRep.ListERVData(); 
     int pageSize = 50; 
     int totalRecords = list.Count(); 
     var totalPages = (int)Math.Ceiling(totalRecords/(float)pageSize); 
     var jsonData = new 
     { 
      total = totalPages, 
      pageSize, 
      records = totalRecords, 
      rows = (from ervdata in list 
        select new 
        { 
         i = ervdata.Id, 
         cell = new[] 
          { 
           ervdata.UnitNo, 
           ervdata.Area, 
           ervdata.RatePerSQM 


          } 

        }).ToArray() 
     }; 
     return Json(jsonData, JsonRequestBehavior.AllowGet); 

}

和我的jqGrid代码是这样的

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    jQuery("#list").jqGrid({ 
     url: '/ERV/GetERVList/', 
     datatype: 'json', 
     mtype: 'GET', 
     colNames: ['Unit', 'Area', 'Rate per SQM'], 
     colModel: [ { name: 'UnitNo', index: 'UnitNo' }, 
        { name: 'Area', index: 'Area' }, 
        { name: 'RatePerSQM', index: 'RatePerSQM' }], 
     pager: jQuery('#pager'), 
     rowNum: 10, 
     rowList: [5, 10, 20, 50], 
     sortname: 'Id', 
     sortorder: "Id", 
     viewrecords: true, 
     caption: 'My first grid' 
    }); 
}); 

由于提前, Ancy

我知道,我迟到了,但是这将帮助任何人谁是寻找如何计算派生列

继应的jqGrid V4.0工作

变化colNames和colModel配置按照以下

colNames: ['Unit', 'Area', 'Rate per SQM', 'Unit Price'], 
colModel: [ { name: 'UnitNo', index: 'UnitNo' }, 
      { name: 'Area', index: 'Area' }, 
      { name: 'RatePerSQM', index: 'RatePerSQM' }, 
      { name: 'RatePerSQM', index: 'RatePerSQM', 
       formatter: function (cellvalue, options, rowObject) 
         { 
          return rowObject["Area"] * cellvalue 
          } 
      }], 
+0

colmodel包含重复的col名称。 cellvalue引用自身。所以这似乎不起作用。可能需要使用col索引 – Andrus 2011-09-07 17:45:57