`

jQuery DataTables插件 列于数据的对应关系

阅读更多
初始化表格时,要使用aoColumnDefs或者aoColumns属性给每一列设置属性。
无论列是否显示,表格中新加的数据,如果按照下列设置,则数据源每一列都不能少。例如:
aoColumnDefs : [
  {"aTargets" : [0], "mData" : "name"},
  {“aTargets” : [1], “mData” : “age”},
  {“aTargets” : [2], “mData” : “salary”}
]


那么使用table.fnAddData(arrayData)时,arrayData的数据必须是:
[
  {“name” : “Jim”, “age”: 20, “salary”: 1000000},
]


每个列对应的属性都不能少。
如果某一列对应的属性可能会缺失,则可以如下设置避免出错:
aoColumnDefs : [
  {"aTargets" : [0], "mData" : "name"},
  {“aTargets” : [1], “mData” : “age”},
  {“aTargets” : [2], “mData” : function(source, type, val){
      if(source.salary){
        return source.salary;
      }else{
        return null;
      }
  }}
]


如果既不用aoColumnDefs也不用aoColumns给表格列设置属性,那么就得使用如下方式直接添加数据,而不能使用对象的方式:
dataTable.fnAddData(['Jim', 21, 1000000])

数据会按照顺序,原封不动的插入到单元格中。如果想在单元格中放入checkbox,可以直接用:
dataTable.fnAddData(['<input type="checkbox">', 21, 1000000])


如果某一列无“数据源”,则可以在初始化表格时如下设定:
"aoColumns": [
  null,
  null,
  { "mData": null }
]

也可以在aoColumnDefs中设置 mData : null

则添加数据时可以使用如下格式,缺少一列数据。
[
  {“name” : “Jim”, “age”: 20},
]
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics