Появляется ошибка, связанная с JS для кнопки переключения

Я уже объявляю ID в своем <div>, однако появляется ошибка, как решить эту ошибку.

Появляется ошибка, связанная с JS для кнопки переключения

Ниже мой код для справки

HTML

<div class = "row">
 <div>
  <input type = "checkbox" data-column = "0" class = "toggle-vis" data-label-text = "No" checked/>
  <input type = "checkbox" data-column = "1" class = "toggle-vis" data-label-text = "Region" checked>
  <input type = "checkbox" data-column = "2" class = "toggle-vis" data-label-text = "IBSE Node" checked/>
 </div>
<div>
 <table class = "data-table stripe hover multiple-select-row nowrap" id = "example">
  <thead>
   <tr>
    <th class = "table-plus datatable-nosort">No</th>
    <th>Region</th>
    <th>IBSE Node</th>
   </tr>
  </thead>
 </table>
</div>

JS

<script>
    $(function(){
        $.fn.bootstrapSwitch.defaults.onColor = 'success';
        $.fn.bootstrapSwitch.defaults.offColor = 'danger';
        $.fn.bootstrapSwitch.defaults.size = 'mini';
        $.fn.bootstrapSwitch.defaults.state = 'false';
        $.fn.bootstrapSwitch.defaults.inverse = 'true';
        $(".toggle-vis").bootstrapSwitch();
            var table = $('#example').DataTable();
        $('.toggle-vis').on('switchChange.bootstrapSwitch', function(event, state) {
            event.preventDefault();
            var column = table.column($(this).attr('data-column'));
            column.visible( ! column.visible() );
        });
    });
</script>

Я создал пример из предоставленного вами исходного кода, который, похоже, работает нормально. Можете ли вы объяснить, чего не хватает в демо, которое я создал, чтобы получить ту же ошибку, что и у вас. Спасибо Демонстрация JsFiddle

NewToJS 28.05.2019 05:00
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
62
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы не можете повторно инициализировать datatable, вам нужно уничтожить его перед повторной инициализацией. добавьте эти строки внутри вашей функции переключения.

$("#example").dataTable().fnDestroy();

Спасибо, я просто поместил этот код строки между переключателями, и это решило мою проблему.

mastersuse 28.05.2019 05:14

Другие вопросы по теме