Событие перехвата вызова ajax не работает на переключателе Bootstrap в плагине datatables при адаптивном просмотре

Событие перехвата вызовов Ajax не работает на переключателе Bootstrap в плагине datatables при адаптивном просмотре.

$('.switch').bootstrapSwitch();
$('.switch').on('switchChange.bootstrapSwitch', function () 
{
    var id =$(this).attr("attrid");  
    $.ajax({
        type:'POST',
        url:'<?php echo base_url();?>parties/party_status_ajax',
        data:{'id':id,'checked':$(this).bootstrapSwitch('state')},
        success: function (data)
        {
            $('.close').click();
            $('#successmessage').html(data); 
        }
    });
 });

1 ответ

Проблема может заключаться в том, что вы связываете событие с элементом, которого нет в html, когда этот код выполняется, вам нужно использовать делегированные события, чтобы связать его с последующими элементами таблицы данных.

что-то вроде ниже

$( "#dataTable tbody" ).on( "switchChange.bootstrapSwitch", ".switch", function() {
   var id =$(this).attr("attrid");  
    $.ajax({
        type:'POST',
        url:'<?php echo base_url();?>parties/party_status_ajax',
        data:{'id':id,'checked':$(this).bootstrapSwitch('state')},
        success: function (data)
        {
            $('.close').click();
            $('#successmessage').html(data); 
        }
    });
});
Другие вопросы по тегам