向数据表添加索引列

Cij*_*V J 5 javascript c# datatable jquery json

假设我的DataTable中显示以下json:

 // JSON structure for each row in this example:
    //   {
    //      "engine": {value},
    //      "browser": {value},
    //      "platform": {value},
    //      "version": {value},
    //      "grade": {value}
    //   }
    $('#example').dataTable( {
      "ajaxSource": "sources/objects.txt",
      "columns": [
        { "data": "engine" },
        { "data": "browser" },
        { "data": "platform" },
        { "data": "version" },
        { "data": "grade" }
      ]
    } );
Run Code Online (Sandbox Code Playgroud)

我想要的是,在此数据表中添加索引列以为行编号。像这样的东西:

 "columns": [
        {"data" : "Index"},      <------- this should number my rows 
        { "data": "engine" },
        { "data": "browser" },
        { "data": "platform" },
        { "data": "version" },
        { "data": "grade" }
      ]
Run Code Online (Sandbox Code Playgroud)

注意:在Json中传递数据时,我没有任何索引(尽管我可以做到这一点,但是在Javascript本身中有没有更好的解决方案来处理此问题?)

帮助赞赏..!

小智 6

尝试这个。

"render": function ( data, type, full, meta ) {
    return  meta.row + 1;
} },
Run Code Online (Sandbox Code Playgroud)


Aru*_*hny 0

您可以使用unshift()

"columns": [
    { "data": "engine" },
    { "data": "browser" },
    { "data": "platform" },
    { "data": "version" },
    { "data": "grade" }
].unshift({"data" : "Index"})
Run Code Online (Sandbox Code Playgroud)

或者使用临时数组

var cols = [{
    "data": "engine"
}, {
    "data": "browser"
}, {
    "data": "platform"
}, {
    "data": "version"
}, {
    "data": "grade"
}];

cols.unshift({
    "data": "Index"
})

....
"columns": cols
Run Code Online (Sandbox Code Playgroud)