событие клика в js datatables (не работает с подкачкой) - PullRequest
0 голосов
/ 14 февраля 2019

Мне нужна кнопка с нажатием js в каждом datatable row, но мой код нарушен системой datatables paging - опция данных по умолчанию.Клик работает только на первой странице с данными.Моя единственная идея - отключить подкачку и создать прокручиваемый объект данных, но я бы предпочел сохранить подкачку для лучшего UX.

Пример данных:

<table id="data_tables">
<thead>
    <tr>
        <td>Action</td>
        <td>Name</td>
        <td>Surname</td>
    <tr>      
</thead>
<tbody>
    <!-- Datarow 1 -->
    <tr>
        <td><input type='button' class='my_button' data-id='1' value='click' /></td>
        <td>John</td>
        <td>Wayne</td>
    </tr>
    <!-- Datarow 2 -->      
    <tr>
        <td><input type='button' class='my_button' data-id='2' value='click' /></td>
        <td>Clark</td>
        <td>Kent</td>
    </tr>
</tbody>
</table> 

Обработчик события Click

//simple on() in jquery would do the trick in normal <table>
$( ".my_button" ).on( "click", function() {
    var id = $(this).attr("data-id");
    alert(id); 
});     

Есть ли способ обойти эту проблему?Или, может быть, решение API данных?

1 Ответ

0 голосов
/ 14 февраля 2019

Вы можете сделать что-то вроде этого:

$("#data_tables").on("click", ".my_button", function() {
    var id = $(this).data("id");
    alert(id);
});
...