0

jqgridの最初の列としてシリアル番号を表示したいのですが、データベース レコードには連続した「ID」がないため、使用できません。
これを達成する簡単な方法はありますか?

更新:サンプルコード:

$(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});
});
4

1 に答える 1

0

この質問/回答には、再定義されたテーブル データに基づいて jqgrid を再描画する方法に関する情報が含まれている必要があります: jqGrid add new column

の追加に関しては、各レコードにタイムスタンプを追加したり、カウンターの値を追加したりすることもできます。何かのようなもの:

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 フィールド (サンプル プロパティ名のみ) を列モデルのインデックス プロパティに割り当てることができます。

于 2012-12-13T13:03:25.513 に答える