在jqgrid中显示序列号

时间:2012-12-13 11:33:37

标签: javascript jquery jqgrid

我想在jqgrid中将序列号显示为第一列。因为,数据库记录没有连续的'ids',我无法使用它。
有没有简单的方法来实现这一目标?

更新: 示例代码:

$(document).ready(function()
  {    
    $("#list").jqGrid(
    {
      url:'<%=Url.class_variable_get(:@@baseurl) %>/address_books/show.json',
      datatype:'json',
      mtype:'get',
      colNames:['Id','Name','Email Id','Number'],
      colModel:[
        {name:'address_book_id',index:'address_book_id',sorttype:'int',sortable:true,width:100},
        {name:'name',index:'name',sortable:true,width:300},
        {name:'email',index:'email',sortable:true,width:265},
        {name:'number',index:'number',sorttype:'int',sortable:true,width:300},
      ],
      pager:$('#pager'),
      emptyrecords: "No Records to display",     
      pginput:true,
      pgbuttons:true,
      rowNum:10,
      rowList:[5,10,20,30],
      viewrecords:true,
      sortorder: "desc",
      //multiselect:true,
      loadonce:true,
      gridview:false,
      sortname:'name',
      caption: " Contacts List",
      jsonReader: {
        repeatitems : false,
        cell:"",
        id: "0"
      },
      height: 80
    });

    $("#list").jqGrid('navGrid','#pager',{edit:false,add:false,del:false,search:true},{multipleSearch:true});
});

1 个答案:

答案 0 :(得分:0)

此问题/答案应包含有关如何根据重新定义的表数据重绘jqgrid的信息:jqGrid add new column

关于添加a,您可以为每个记录添加时间戳,甚至是计数器的值;类似的东西:

var recordsSet = [];
$.each(databaseRecords, function(i, record) {
    record.idx = Date.now();
    record._id = i;
    recordSet.push(record);
});

/* code to populate or redraw using update recordSet array jqgrid here */

然后你可以在调用jqgrid时将_id字段或idx字段(仅限样本属性名称)分配给列模型的index属性。