Javascript $(event.target).attr(';数据操作';)返回未定义的

Javascript $(event.target).attr(';数据操作';)返回未定义的,javascript,jquery,Javascript,Jquery,我有一些按钮功能来显示一些数据时,点击这个表 数 成分 但是,当我单击带有数据操作属性的按钮时,它将返回未定义或对象不是函数 $(文档).ready(函数(){ 如果(选项类型!=“未定义”){ options.language={emptyTable:“此表上没有数据”}; } 变量表=$(dataTableElement).DataTable(选项); $(dataTableElement)。在('单击','数据操作',(e)=>{ e、 预防默认值() var目标=$(e.target

我有一些按钮功能来显示一些数据时,点击这个表


数
成分
但是,当我单击带有
数据操作
属性的按钮时,它将返回未定义或对象不是函数

$(文档).ready(函数(){
如果(选项类型!=“未定义”){
options.language={emptyTable:“此表上没有数据”};
}
变量表=$(dataTableElement).DataTable(选项);
$(dataTableElement)。在('单击','数据操作',(e)=>{
e、 预防默认值()
var目标=$(e.target);
if(target.children().length==0)target=$(e.target.parent();

var action=target.attr('data-action'));//请提供一个。因此,当您单击
时,您会得到变量
target
,然后就在下面,您会询问
target/i
是否没有子对象,如果是,那么您会将target设置为
td
。我认为这是问题所在,因为
td
没有属性
数据操作理解你为什么想要
if(target.children().length==0)target=$(e.target.parent();
你没有孩子m8。这是你的问题!因此,如果你想要这个动作,在if target.children()之前执行var动作。length==0…如果你在读取数据之前更改目标,你会有什么期望@CarstenLøvboAndersen该死的我只是删除了
如果(target.children().length==0)target=$(e.target.parent();
,这很有效,非常感谢