2017-01-30 7 views
1

пагинация ули не получают нажмите несколько раз

function paginate_table(row,paginate_div_id, perpage) { 
 
    var items = row; 
 
    var numItems = items.length; 
 
    var perPage = perpage; 
 
    items.slice(perPage).hide(); 
 
    $('#' + paginate_div_id + '').pagination({ 
 
     items: numItems, 
 
     itemsOnPage: perPage, 
 
     cssStyle: "compact-theme", 
 
     onPageClick: function (pageNumber) { 
 
      var showFrom = perPage * (pageNumber - 1); 
 
      var showTo = showFrom + perPage; 
 
      items.hide() 
 
        .slice(showFrom, showTo).show(); 
 
     } 
 
    }); 
 
} 
 
paginate_table($('.dynamicrow'),"searchresult", 10); 
 
$(document).on('click', '#searchresult ul li', function(e) { 
 
console.log(e.target) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="row dynamicrow">qwe</div> 
 

 
<div id="searchresult" class="compact-theme simple-pagination"> 
 
    <ul> 
 
    <li><a href="#page-1" class="page-link dontprint prev">Prev</a> 
 
    </li> 
 
    <li><a href="#page-1" class="page-link dontprint">1</a> 
 
    </li> 
 
    <li class="active"><span class="current dontprint">2</span> 
 
    </li> 
 
    <li class="active"><span class="current dontprint next">Next</span> 
 
    </li> 
 
    </ul> 
 
</div>

Я использую разбиение на страницы simplePagination, как и выше, как я добавить, как показано ниже.

function paginate_table(row,paginate_div_id, perpage) { 
    var items = row; 
    var numItems = items.length; 
    var perPage = perpage; 
    items.slice(perPage).hide(); 
    $('#' + paginate_div_id + '').pagination({ 
     items: numItems, 
     itemsOnPage: perPage, 
     cssStyle: "compact-theme", 
     onPageClick: function (pageNumber) { 
      var showFrom = perPage * (pageNumber - 1); 
      var showTo = showFrom + perPage; 
      items.hide() 
        .slice(showFrom, showTo).show(); 
     } 
    }); 
} 

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

Я думаю, что это из-за селектора в событии click.

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

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

Update

$("#searchresult").on('click','ul li a,span ',function(e){ 
//  e.preventDefault(); 
     console.log(e.target) 
}) 

Используется этот один, когда я нажимаю на якоре, не печатает любой на консоли, если я нажимаю на span он консоль вроде этого.

<span class="current dontprint next">Next</span>

+0

Мне нужно щелкнуть дважды, чтобы запустить его. событие click \ – Pekka

+0

Вы пытались предотвратить поведение якоря по умолчанию? – Ionut

+0

нет ждать, я попробую его – Pekka

ответ

0

Просто поведение по умолчанию с помощью .preventDefault():

$(document).on('click', '#searchresult ul li a', function(e) { 
    e.preventDefault(); 
}); 
0

Попробуйте с простым событием щелчка -

$('#searchresult ul li').click(function() { 
    //your function 
}); 

При загрузке #searchresult содержания от AJAX вы можете попробуйте ниже -

$('body').on('click', '#searchresult ul li', function() { 
    //your function 
}); 
+0

такой же результат, не работающий на якорь, работающий на пролет – Pekka

Смежные вопросы