Datatables 如何使用数据表+;选择分机
我使用select扩展名并尝试使用所选行的id发出“警报” 以下代码失败:Datatables 如何使用数据表+;选择分机,datatables,Datatables,我使用select扩展名并尝试使用所选行的id发出“警报” 以下代码失败: let sels = jqTable.api().rows({ selected: true }); let st = ''; sels.each(function (value, index) { st += ',' + sels.row(value).id(); }); alert(st); 独立于所选行调用该函数一次: 0行:value=[],index=0 >=1:value=[0,2],index=
let sels = jqTable.api().rows({ selected: true });
let st = '';
sels.each(function (value, index) {
st += ',' + sels.row(value).id();
});
alert(st);
独立于所选行调用该函数一次:
- 0行:
value=[],index=0
- >=1:
value=[0,2],index=0
let sels = jqTable.api().rows({ selected: true });
let st = '';
for (let i = 0; i < sels.count(); i++) {
st += ',' + sels.row(sels[0][i]).id();
}
alert(st);
但是使用它取消了数据表配置中rowId:'IdFile'
的优点。当数据集返回API对象中的结果数组时使用,如果不是这样,则返回单个结果,该结果恰好是包含所选行的rowId的数组
第一个代码块失败,因为只有一次迭代(结果是单个数组)
您的第二个块可以工作,因为您正在迭代单个数组(sels[0]
)
第三个也可以工作,因为生成了一个包含所有选定行的数据的数组
希望这会有所帮助
sels.data().each(function (value, index) {
st += ',' + value.IdFile;
});