用户选择
自:选择 1.2.0
用户操作会导致选择表格中的项目。
请注意 - 此属性需要 选择 扩展来获得 DataTables。
说明
在最终用户通过与表格交互(通常是在表格中点击一个单元格)选择项目之前,触发这个事件。
这个事件是可取消的 - 即在事件处理程序中使用 e.preventDefault()
或 return false;
将会阻止选择执行任何进一步的项目选择操作。这在某些情况下很有用,当您不希望表格中的某些项目导致项目选择,例如,在图片执行某些操作并且不应激活行选择的情况。
请注意,当使用项目选择 API 方法时,不会触发此事件(例如,row().select()
)。它只会被 select.selector
中定义的最终用户操作触发。
如果您希望某个行完全不可选择,可以使用 select.selectable
选项。
此外,与所有 DataTables 发出的事件一样,这个事件会随着 dt
命名空间一起触发。因此,要监听此事件,您还必须使用 dt
命名空间,只需将 .dt
附加到您的事件名称即可(使用 on()
和 one()
时会自动执行此操作)。
类型
函数 function( e, dt, type, cell, originalEvent )
- 参数
名称 类型 可选 1 e
否 jQuery 事件对象
2 dt
否 DataTables API 实例
3 类型
否 将被选择的项目类型。这可以是
行
、列
或单元格
。4 单元格
否 由事件激活的单元格的
cell()
结果。5 originalEvent
否 当最终用户激活选择监听事件时,浏览器生成的原始事件。
示例
在点击图片时阻止项目选择
var table = new DataTable('#myTable', {
select: true
});
table.on('user-select', function (e, dt, type, cell, originalEvent) {
if (originalEvent.target.nodeName.toLowerCase() === 'img') {
e.preventDefault();
}
});
关联
以下选项直接关联并且在您的应用开发中可能也十分有用。