无法在datatable的drawCallback()中以编程方式选择行
Unable to select rows programatically in drawCallback() of DataTables
我正在使用具有选择扩展的最新数据表。我试图在表呈现后以编程方式选择多行。我试图在drawCallback()中实现这一点,如下所示:
var table = $('#example').DataTable({
"select": {
"style": 'multi'
},
"columns": [
{ "data": "name" },
{ "data": "position" },
{ "data": "office" },
{ "data": "age" },
{ "data": "start_date" },
{ "data": "salary" }
],
"rowId": "name",
"drawCallback": function( settings ) {
var api = new $.fn.dataTable.Api( settings );
api.rows(["[id='Bradley Greer']", "[id='Ashton Cox']"]).select();
}
});
但是,我得到一个Uncaught TypeError: Cannot read property 'style' of undefined
错误。
这是实时版本的链接- http://live.datatables.net/yemiqafu/2/
p。S:我使用[id='Bradley Greer']
作为选择器,因为id中有一个空格。我必须在现场演示中这样做,这不是抛出错误的原因。
<解决方案/strong>
选项drawCallback
不是执行行选择的正确位置。
理想情况下,你应该使用initComplete
选项代替,但是有一个问题与选择扩展,这是修复10/7/15阻止选择工作在initComplete
。在此之前,你可以使用下面的解决方法来处理HTML来源的数据,或者使用每晚构建的数据表和Select扩展。
对于HTML数据源的表,可以在初始化后选择行。
var table = $('#example').DataTable({
"select": {
"style": 'multi'
},
"columns": [
{ "data": "name" },
{ "data": "position" },
{ "data": "office" },
{ "data": "age" },
{ "data": "start_date" },
{ "data": "salary" }
],
"rowId": "name"
});
table.rows(["[id='Bradley Greer']", "[id='Ashton Cox']"]).select();
演示strong>
请参阅此示例,以获取使用HTML源数据的表的解决方案的代码和演示。
请参阅这个示例,以获取使用每晚JS/CSS构建带有Ajax源数据的表的代码和演示。这个例子也可以用于HTML源数据
相关文章:
- 以编程方式填充组合框道场 (1.8) 的最佳方法是什么?
- 以编程方式选择文本Mobile Safari
- Thunderbird,如何以编程方式选择第一个选项卡
- 以编程方式获取无线接入点列表
- 使用Javascript/jQuery以编程方式将当前锚点/哈希/片段附加到任何表单操作url
- 通过javascript以编程方式将文件插入HTML输入
- 如何以非编程方式国际化HTML文本
- Y组合器如何以编程方式计算不动点
- 如何以编程方式添加到可变嵌套对象中
- 在视图中渲染多个按钮以编程方式进行本机反应
- 为什么我在以编程方式打开窗口时遇到问题
- 以编程方式添加的复选框的值
- 以编程方式将fabric-js-canvas的图像替换为hq图像,并重新计算其他对象的坐标和大小
- 可以't以编程方式关闭jQuery移动弹出窗口中的可折叠部分
- 以编程方式调用javascript函数
- 如何以编程方式查找javascript语法错误的位置
- 以编程方式将特定的JavaScript添加到Qualtrics中的特定问题中
- 当以编程方式更改输入值时,不会执行更改时事件
- 如何以编程方式在 jsTree 中选择一个节点并打开所有父节点
- 以编程方式打开<选择>选取器