Добавить всплывающую подсказку в строку данных после row.add () - PullRequest
0 голосов
/ 27 ноября 2018

Я должен добавить всплывающую подсказку к datatables row

//initialize datatable
$scope.anomaliesTable = $('#sapTable').DataTable({
    //disable responsive
    responsive: true,
    //"bLengthChange": false,
    //deferRender:    true,
    scrollY:        '60vh',
    scrollCollapse: true,
    info:   false,
    paging : false,
    //scroller:       true,
    select: true,
    columns: [
        { data: 'can_name' },
        //other columns data
        ],
        columnDefs: [ 
            {
                "className": "dt-center", "targets": "_all"
            }, 
            ],              
});

Строка добавляется из подписки на веб-сокет с помощью метода row.add

$scope.anomaliesTable.row.add(data).draw(false);

InВ другой таблице, где данные загружаются из ajax, я использовал

rowCallback: function( row, data, index ) {
    row.setAttribute('data-toggle',"tooltip");
    row.setAttribute('data-placement',"left");
    row.setAttribute('title', 'UIID: ' + data.uuid);
}

, но она не работает, поскольку добавляет подсказку браузера и только в более старой строке.У вас есть совет?

1 Ответ

0 голосов
/ 27 ноября 2018

При добавлении новой строки вы можете получить вновь созданный узел, используя node() метод API.

var row = $scope.anomaliesTable.row.add(data).draw(false).node();

Вы можете использовать rowCallback, чтобы добавить необходимые атрибуты data- или добавить их после добавленияновая строка, например:

$(row).attr({
   'data-toggle': 'tooltip',
   'data-placement': 'left',
   'title': 'UIID: ' + data.uuid
});

Затем можно инициализировать плагин всплывающей подсказки, например:

$('[data-toggle="tooltip"]', row).tooltip();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...