我正在用 Tabulator5.2 构建表格, 我需要将一些数据作为隐藏数据传递到每一行,例如 DB_ID ..等 示例:
{'extrId' : 10 , 'connectionDbIndex' : 101 }
为了在调用 row.getData() 或其他方法时获取全部数据。
我如何构建表格:
这是表格标题:
var tableHeaders =
[
{formatter:"rowSelection", width:20 , titleFormatter:"rowSelection", hozAlign:"left", headerSort:false, cellClick:function(e, cell){cell.getRow().toggleSelect();}} ,
{title:'id", field:"ID" , hozAlign:"left" ,responsive:2 , headerFilter:'input', headerFilterLiveFilter:true ,headerSort:false }
]
这是表格数据:
var i = 0
counter = 2000
while (i < counter){
var more = {'DB_ID' : 2012 }
var row = {id:1+i, name:"Oli Bob"+i, progress:12, gender:"male"+i, rating:1, col:"red", dob:"19/02/1984", car:1 , site:'new' , ticket:12 , opened:false , cssClass:class2.randomId() , data : {'s' : 10}}
class2.insert_row(row , more)
i++
}
这是负责添加行的函数:
insert_row(payload , more){
this.tableContent.push(payload)
this.rowMoreData.push(more)
for (let key in payload ){
var headerLabel = key
if (! this.alreadyColumsAdded.includes(headerLabel)){
this.alreadyColumsAdded.push(headerLabel)
var a = {title:headerLabel, field:headerLabel , hozAlign:"left" ,responsive:2 , headerFilter:'input', headerFilterLiveFilter:true ,headerSort:false }
this.tableHeaders.push(a)
}
}
}
将所有行添加到字典后。最后建表。
var table = new Tabulator(this.tableId, this.tableOptions);
如何向每一行添加一些隐藏数据?
我也这么做。我将
visible
添加到我的列中并将其设置为 false
。
这里不需要做任何事情,如果你没有为属性定义列,它就不会显示在表中,并且仍然在行数据中。
因此,只需根据需要在行数据中设置属性并保留即可