всплывающая подсказка начальной загрузки не работает сразу после обновления jQuery datatables - PullRequest
0 голосов
/ 27 июня 2019

Я использовал более старую версию dataTables с подсказкой начальной загрузки, и она работала нормально. После обновления до dataTables 1.9 содержимое всплывающей подсказки вводится непосредственно в TH, который должен был иметь всплывающую подсказку при наведении курсора. Я не вижу исходное содержание TH - я вижу содержимое всплывающей подсказки. При всплывающем окне подсказки содержимое всплывающей подсказки отображается нормально.

Чтобы соответствовать нашим стандартам кодирования, мне нужно использовать всплывающую подсказку начальной загрузки, а не более новую подсказку dataTables, которая, как мне кажется, может стать причиной проблемы.

 <thead>
   <tr>
    <th data-role="tooltip" data-title="seo mapping tool tip 1" class="col-sm-1">Mapping</th>
    <th data-role="tooltip" data-title="analytics tool tip 2" class="col-sm-1">Analytics Title Variable</th>
    <th data-role="tooltip" data-title="seo title content tooltip 3" class="col-sm-1">Analytics Title Content</th>
    <th data-role="tooltip" data-title="meta title variable tooltip 4" class="col-sm-1">Meta Title Variable</th>
    <th data-role="tooltip" data-title="meta title content variable tooltip 5" class="col-sm-1">meta title content</th>
    <th data-role="tooltip" data-title="seo meta description tool tip 6" class="col-sm-1">meta description</th>
    <th data-role="tooltip" data-title="seo meta description content tool tip 7" class="col-sm-1">meta description content</th>
    <th data-role="tooltip" data-title="seo meta keyword tool tip 8" class="col-sm-1">meta keyword</th>
    <th data-role="tooltip" data-title="seo meta keyword content tool tip 9" class="col-sm-1">meta keyword content</th>
   </tr>
  </thead>
   <tbody>
     <tr>
      <td>some mapping</td>
      <td>analytics title variable</td>
      <td>analytics title content</td>
      <td>meta title variable</td>
      <td>meta title content</td>
      <td>meta description variable</td>
      <td>meta description content</td>
      <td>meta keywords</td>
      <td>meta keywords content</td>
     </tr>
   </tbody>

<!-- snipped -->
<script>
 $( document ).ready(function() {
  $("th").tooltip({
    container: 'body'
  });
 });

</script>

Я пробовал это

$('body').tooltip({selector: '[data-toggle="tooltip"]'});

это не имело никакого эффекта.

1 Ответ

0 голосов
/ 27 июня 2019

У меня есть кое-что, что работает ... все еще не знаю, почему проблема возникает, но я нашел обходной путь:

Я добавил контент данных с текстом, который я хочу добавить в каждый TH. Затем я добавил функцию drawCallback в свою таблицу данных

 $(".seoReport").DataTable({
    "bPaginate": false,
    "bFilter": false,
    "drawCallback": function( settings ) {
     $(".seoReport th").each(function(){
      $(this).text($(this).data("content"));
     })
    }
  });

Это решает проблему ... немного взломать. Открыты к предложениям, как предотвратить всплывающую подсказку о том, что TH в первую очередь.

...