$ {event.target).attr('data-action')返回未定义

时间:2020-09-21 08:44:10

标签: javascript jquery

在此表中单击时,我具有一些按钮功能来显示一些数据。

    <tbody>
        <tr id="trid">
            <td><i class="fas fa-plus-circle" data-action="onExpand"></i></td>
            <td>number</td>
            <td>component</td>
        </tr>
    </tbody>

但是,当我单击具有data-action属性的按钮时,它将返回未定义或对象不是函数。

    $(document).ready(function () {
        if(typeof options != 'undefined'){
            options.language = {emptyTable :"there is no data on this table"};
        }
        var table = $(dataTableElement).DataTable(options);
        $(dataTableElement).on('click', '[data-action]', (e) => {
            e.preventDefault()
    
            var target = $(e.target);
    
            if (target.children().length == 0) target = $(e.target).parent();
               
            var action = target.attr('data-action'); //<---- the problem in here
    
            var tr = target.closest('tr');
            var row = table.row(tr);
            var data = row.data();
    
            if (typeof window[action] === 'function') {
                window[action](data, row, tr); //<----- object is not a function on here
            } else {
                console.log('function ' + action + ' not found ');
            }
        });
    });

有人可以给我一些建议吗?因为我不知道该如何解决。 谢谢

0 个答案:

没有答案