Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как делегировать обработку события (https://javascript.ru/forum/jquery/76961-kak-delegirovat-obrabotku-sobytiya.html)

alex-romanov 05.03.2019 22:45

Как делегировать обработку события
 
<div class="dataTables_paginate paging_simple_numbers" id="DataTables_Table_0_paginate" style="margin-bottom: 10px; margin-top: 10px; font-style: italic; color: rgb(0, 0, 255); font-family: Calibri;"><a class="paginate_button previous disabled" aria-controls="DataTables_Table_0" data-dt-idx="0" tabindex="0" id="DataTables_Table_0_previous">Предыдущая</a><span><a class="paginate_button current" aria-controls="DataTables_Table_0" data-dt-idx="1" tabindex="0">1</a><a class="paginate_button " aria-controls="DataTables_Table_0" data-dt-idx="2" tabindex="0">2</a></span><a class="paginate_button next" aria-controls="DataTables_Table_0" data-dt-idx="3" tabindex="0" id="DataTables_Table_0_next">Следующая</a></div>


Этот код отвечает за листания страниц. (плагин DataTables.)

В качестве элементов перехода использутеся тег <a>

/*функция, отслеживания перехода, на другую страницу*/
        function handlerEventPassPage(table) {
            $('.paginate_button').on('click',   function (e) {
                alert("Переход по ссыле");
                if(!( $(this).hasClass('selectedA') ) ){
                    /*добавили атрибут класс, со значением*/
                    $(this).addClass('selectedA');
                    alert("Переход по ссыле");
                }else {
                    $(this).removeClass('selected');
                }


            });
        }


Эта функция должна отслеживать нажатия на кнопку и на слово-ссылку.
Но при листании, при переходе на другую страницу табилицы, ничего не происходит.

Листанием страниц таблицы, управляет плагин DataTables.

Как можно заставить работать эту обработку неограниченное количество раз ?
Чтобы отслеживать переход на страницы ?

laimas 06.03.2019 04:09

Цитата:

Сообщение от alex-romanov
Эта функция должна отслеживать нажатия на кнопку и на слово-ссылку.

Как она может отслеживать, если обработчик события устанавливается в ней? Скорее наоборот должно, если некая функция - установили обработчик, в котором будет вызываться функция.

alex-romanov 06.03.2019 20:19

function handlerEventPassPage(table) - она вызывается при загрузке страницы и соответственно событие назначается на определенную точку в документе
Когда документ загружен, событие уже должно работать


Часовой пояс GMT +3, время: 09:21.