Jquery无法对冲突进行分页

Jquery无法对冲突进行分页,jquery,Jquery,我有7个用jquery分页的结果 我也有复选框的形式,过滤结果正常 问题是,当我过滤结果时,分页之后就不能正常工作了 可能冲突是因为筛选和分页代码都使用show()hide()方法 你能帮我解决这个问题吗 函数更新(){ $('.resultblock').hide(); 如果(categories.length>0){ $('.resultblock').hide(); 对于(i=0;i

我有7个用jquery分页的结果

我也有复选框的形式,过滤结果正常

问题是,当我过滤结果时,分页之后就不能正常工作了

可能冲突是因为筛选和分页代码都使用show()hide()方法

你能帮我解决这个问题吗

函数更新(){
$('.resultblock').hide();
如果(categories.length>0){
$('.resultblock').hide();
对于(i=0;i
您的代码相当复杂,您可以通过执行以下操作来简化您的生活:

$(document).ready(function() {
    var categories = [];
    var currentFirstElement = 0;
    var numberPerPage = 3;
    update();

    $(".category").click(function(e) {
        if (this.checked)
            categories.push(this.value);
        else
            categories.splice(categories.indexOf(this.value), 1);
        update();
    });

    $(".pageButton").click(function() {
        currentFirstElement = Number(this.text)*numberPerPage-numberPerPage;
        $('#page').html('Page #'+this.text);
        update();
    });

    function update() {
        $('.resultblock').hide();
        if (categories.length > 0) {
            $('.resultblock').hide();
            for (i = 0; i < categories.length; i++) {
                $('.resultblock[data-tag*="'+categories[i]+'"]').show();
            } 
        }
        $('.resultblock:lt('+currentFirstElement+')').hide();
        $('.resultblock:gt('+(currentFirstElement+numberPerPage-1)+')').hide();
        $('#count').html('Count: '+$(".resultblock:visible").length);
        $('#totalcount').html('Total Count: '+$(".resultblock").length);
    };
});
$(文档).ready(函数(){
var类别=[];
var currentFirstElement=0;
var numberPerPage=3;
更新();
$(“.category”)。单击(函数(e){
如果(选中此项)
categories.push(这个值);
其他的
categories.splice(categories.indexOf(this.value))1;
更新();
});
$(“.pageButton”)。单击(函数(){
currentFirstElement=Number(this.text)*numberpage numberpage;
$('#page').html('page'+this.text);
更新();
});
函数更新(){
$('.resultblock').hide();
如果(categories.length>0){
$('.resultblock').hide();
对于(i=0;i
这正如预期的那样有效


若要在对不同类别进行筛选时移除页面链接,请考虑检查每个页面是否包含至少一个所选类别和<代码> .HIDED()/<代码>页面,如果不是这样的话。这可以通过使用一个简单的
for循环来实现
@educationeyourself我明天可以看一看。正如我所做的,您可以将复选框添加到数组中,然后检查此数组是否包含任何元素。如果没有,你就把班级改回去。
$(document).ready(function() {
    var categories = [];
    var currentFirstElement = 0;
    var numberPerPage = 3;
    update();

    $(".category").click(function(e) {
        if (this.checked)
            categories.push(this.value);
        else
            categories.splice(categories.indexOf(this.value), 1);
        update();
    });

    $(".pageButton").click(function() {
        currentFirstElement = Number(this.text)*numberPerPage-numberPerPage;
        $('#page').html('Page #'+this.text);
        update();
    });

    function update() {
        $('.resultblock').hide();
        if (categories.length > 0) {
            $('.resultblock').hide();
            for (i = 0; i < categories.length; i++) {
                $('.resultblock[data-tag*="'+categories[i]+'"]').show();
            } 
        }
        $('.resultblock:lt('+currentFirstElement+')').hide();
        $('.resultblock:gt('+(currentFirstElement+numberPerPage-1)+')').hide();
        $('#count').html('Count: '+$(".resultblock:visible").length);
        $('#totalcount').html('Total Count: '+$(".resultblock").length);
    };
});