商城项目分页PageHelper和JQuery实现

商城项目分页PageHelper和JQuery实现

    // 按照姓名模糊查询用户
    var currentPageNum = 1;
    var resultCopy;
    var nameLikeCopy;
    $('#search_name_btn').click(function () {

        // 获取文本框中值
        var username = $('#search_name_btn').parents('span').siblings('input').val();
        if (username.trim() == '') {
            alert('请输入要查询的用户姓名');
            return;
        }
        if (username.trim() == 'null') {
            alert('输入不合法');
            return;
        }
        var nameLike = username.trim();
        nameLikeCopy = nameLike;
        //清空之前模糊查寻出来的用户,不然会出现内容追加问题
        $('#table_div_nameLike tbody').html('');
        $.ajax({
            url: 'user/1/' + nameLike,
            type: 'GET',
            success: function (result) {
                resultCopy = result;
                if (result.message == '成功') {
                    $('#table_div_nameLike').show(); //显示模糊查询table
                    $('#table_div_all').hide(); //隐藏包含所有员工的div
                    $('#page_break_div').hide(); //隐藏分页工具栏
                    // 遍历Json对象属性中的List
                    for (var index = 0; index < result.data.list.length; index++) {
                        var consumer = result.data.list;

                        //把true和false转化为是和否
                        var isRememberMe = consumer[index].rememberme;
                        if (isRememberMe == true) {
                            isRememberMe = "是";
                        } else {
                            isRememberMe = "否";
                        }
                        var date = timeFormat(new Date(consumer[index].createTime).getTime()); //格式化日期
                        var consumerInfo = '<tr>' + '<td>' + '<input type="checkbox" id="is_checked_box_${userList.id}">' + '</td>' +
                            '<td id="user_id_nameLike">' + consumer[index].id + '</td>' + '<td id="user_name_nameLike">' + consumer[index].username + '</td>' +
                            '<td id="user_phone_nameLike">' + consumer[index].phone + '</td><td id="user_email_nameLike">' + consumer[index].email + '</td><td id="user_street_nameLike">' +
                            consumer[index].street + '</td><td id="user_rememberMe_nameLike">' + isRememberMe + '</td><td id="user_createDate_nameLike">' + date + '</td>' +
                            '<td><button class="btn btn-primary btn-sm editBtn_nameLike" data-toggle="modal" data-target="#editModal_nameLike">编辑</button>\n' +
                            '&nbsp;&nbsp;<button class="btn btn-danger btn-sm deleteBtn_nameLike" id="delete_btn_nameLike">删除</button></td>'
                            + '</tr>';
                        $(consumerInfo).appendTo('#table_div_nameLike tbody');
                    }

                    //生成分页工具栏
                    var pageBreakTool = "当前第" + result.data.pageNum + "页,共" + result.data.pages + "页,共" + result.data.total + "条记录&nbsp;&nbsp;&nbsp;&nbsp";
                    if (result.data.total > 8) {
                        if (result.data.pageNum > 1 && result.data.pageNum != result.data.pages) {
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike'); //向div中追加内容
                        }
                        else if(result.data.pageNum == result.data.pages){
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                        else {
                            var preAndNextLink = "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                    }
                    else {
                        // var preAndNextLink = "<a href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a href='#' >下一页</a>";
                        $('#page_break_nameLike').html(pageBreakTool);
                        // $(preAndNextLink).appendTo('#page_break_nameLike');
                    }
                } else {
                    alert(result.message);
                }
            }, error: function () {
                alert("系统内部发生错误,请联系管理员");
            }
        });
    });

    // 模糊查询分页--上一页
    $(document).on('click', '.prePageClass', function () {
        //清空之前模糊查寻出来的用户,不然会出现内容追加问题
        $('#table_div_nameLike tbody').html('');
        var prePageNum = currentPageNum - 1;
        currentPageNum--;
        $.ajax({
            url: 'user/' + prePageNum + '/' + nameLikeCopy,
            type: 'GET',
            success: function (result) {
                if (result.message == '成功') {
                    $('#table_div_nameLike').show(); //显示模糊查询table
                    $('#table_div_all').hide(); //隐藏包含所有员工的div
                    $('#page_break_div').hide(); //隐藏分页工具栏
                    // 遍历Json对象属性中的List
                    for (var index = 0; index < resultCopy.data.list.length; index++) {
                        var consumer = resultCopy.data.list;

                        //把true和false转化为是和否
                        var isRememberMe = consumer[index].rememberme;
                        if (isRememberMe == true) {
                            isRememberMe = "是";
                        } else {
                            isRememberMe = "否";
                        }
                        var date = timeFormat(new Date(consumer[index].createTime).getTime()); //格式化日期
                        var consumerInfo = '<tr>' + '<td>' + '<input type="checkbox" id="is_checked_box_${userList.id}">' + '</td>' +
                            '<td id="user_id_nameLike">' + consumer[index].id + '</td>' + '<td id="user_name_nameLike">' + consumer[index].username + '</td>' +
                            '<td id="user_phone_nameLike">' + consumer[index].phone + '</td><td id="user_email_nameLike">' + consumer[index].email + '</td><td id="user_street_nameLike">' +
                            consumer[index].street + '</td><td id="user_rememberMe_nameLike">' + isRememberMe + '</td><td id="user_createDate_nameLike">' + date + '</td>' +
                            '<td><button class="btn btn-primary btn-sm editBtn_nameLike" data-toggle="modal" data-target="#editModal_nameLike">编辑</button>\n' +
                            '&nbsp;&nbsp;<button class="btn btn-danger btn-sm deleteBtn_nameLike" id="delete_btn_nameLike">删除</button></td>'
                            + '</tr>';
                        $(consumerInfo).appendTo('#table_div_nameLike tbody');
                    }

                    //生成分页工具栏
                    var pageBreakTool = "当前第" + resultCopy.data.pageNum + "页,共" + resultCopy.data.pages + "页,共" + resultCopy.data.total + "条记录&nbsp;&nbsp;&nbsp;&nbsp";
                    if (resultCopy.data.total > 8) {
                        if (result.data.pageNum > 1 && result.data.pageNum != result.data.pages) {
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike'); //向div中追加内容
                        }
                        else if(result.data.pageNum == result.data.pages){
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                        else {
                            var preAndNextLink = "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                    }
                    else {
                        // var preAndNextLink = "<a href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a href='#' >下一页</a>";
                        $('#page_break_nameLike').html(pageBreakTool);
                        // $(preAndNextLink).appendTo('#page_break_nameLike');
                    }
                } else {
                    alert(result.message);
                }
            }, error: function () {
                alert("系统内部发生错误,请联系管理员");
            }
        });
    });

    // 模糊查询分页--下一页
    $(document).on('click', '.nextPageClass', function () {
        //清空之前模糊查寻出来的用户,不然会出现内容追加问题
        $('#table_div_nameLike tbody').html('');
        var nextPageNum = resultCopy.data.pageNum + 1;
        currentPageNum++;
        $.ajax({
            url: 'user/' + nextPageNum+ '/' + nameLikeCopy ,
            type: 'GET',
            success: function (result) {
                if (result.message == '成功') {
                    $('#table_div_nameLike').show(); //显示模糊查询table
                    $('#table_div_all').hide(); //隐藏包含所有员工的div
                    $('#page_break_div').hide(); //隐藏分页工具栏
                    // 遍历Json对象属性中的List
                    for (var index = 0; index < result.data.list.length; index++) {
                        var consumer = result.data.list;

                        //把true和false转化为是和否
                        var isRememberMe = consumer[index].rememberme;
                        if (isRememberMe == true) {
                            isRememberMe = "是";
                        } else {
                            isRememberMe = "否";
                        }
                        var date = timeFormat(new Date(consumer[index].createTime).getTime()); //格式化日期
                        var consumerInfo = '<tr>' + '<td>' + '<input type="checkbox" id="is_checked_box_${userList.id}">' + '</td>' +
                            '<td id="user_id_nameLike">' + consumer[index].id + '</td>' + '<td id="user_name_nameLike">' + consumer[index].username + '</td>' +
                            '<td id="user_phone_nameLike">' + consumer[index].phone + '</td><td id="user_email_nameLike">' + consumer[index].email + '</td><td id="user_street_nameLike">' +
                            consumer[index].street + '</td><td id="user_rememberMe_nameLike">' + isRememberMe + '</td><td id="user_createDate_nameLike">' + date + '</td>' +
                            '<td><button class="btn btn-primary btn-sm editBtn_nameLike" data-toggle="modal" data-target="#editModal_nameLike">编辑</button>\n' +
                            '&nbsp;&nbsp;<button class="btn btn-danger btn-sm deleteBtn_nameLike" id="delete_btn_nameLike">删除</button></td>'
                            + '</tr>';
                        $(consumerInfo).appendTo('#table_div_nameLike tbody');
                    }

                    //生成分页工具栏
                    var pageBreakTool = "当前第" + result.data.pageNum + "页,共" + result.data.pages + "页,共" + result.data.total + "条记录&nbsp;&nbsp;&nbsp;&nbsp";
                    if (result.data.total > 8) {
                        if (result.data.pageNum > 1 && result.data.pageNum != result.data.pages) {
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike'); //向div中追加内容
                        }
                        else if(result.data.pageNum == result.data.pages){
                            var preAndNextLink = "<a class='prePageClass' href='#'>上一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                        else {
                            var preAndNextLink = "<a class='nextPageClass' href='#'>下一页</a>";
                            $('#page_break_nameLike').html(pageBreakTool);
                            $(preAndNextLink).appendTo('#page_break_nameLike');
                        }
                    }
                    else {
                        // var preAndNextLink = "<a href='#'>上一页</a>" + "&nbsp;&nbsp;" + "<a href='#' >下一页</a>";
                        $('#page_break_nameLike').html(pageBreakTool);
                        // $(preAndNextLink).appendTo('#page_break_nameLike');
                    }
                } else {
                    alert(result.message);
                }
            }, error: function () {
                alert("系统内部发生错误,请联系管理员");
            }
        });
    });

    //在Jquery里格式化Date日期时间数据
    function timeFormat(time) {
        var datetime = new Date();
        datetime.setTime(time);
        var year = datetime.getFullYear();
        var month = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
        var date = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate();
        // var hour = datetime.getHours()< 10 ? "0" + datetime.getHours() : datetime.getHours();
        // var minute = datetime.getMinutes()< 10 ? "0" + datetime.getMinutes() : datetime.getMinutes();
        // var second = datetime.getSeconds()< 10 ? "0" + datetime.getSeconds() : datetime.getSeconds();
        return year + "-" + month + "-" + date;  // 时分秒:+" "+hour+":"+minute+":"+second
    }

    // 模糊查询,点击编辑按钮数据进行回显(为动态生成的dom元素绑定事件)
    var userId, userName, userPhone, userEmail, userAddress;
    $(document).on('click', '.editBtn_nameLike', function () {
        var userID = $(this).parents('tr').children('#user_id_nameLike').text();
        userId = userID;
        //姓名回显
        var username = $(this).parents('tr').children('#user_name_nameLike').text();
        $('#username_id').val(username);
        userName = username;
        //电话号
        var phone = $(this).parents('tr').children('#user_phone_nameLike').text();
        $('#phone_id').val(phone);
        userPhone = phone;
        //email
        var email = $(this).parents('tr').children('#user_email_nameLike').text();
        $('#email_id').val(email);
        userEmail = email;
        //地址
        var address = $(this).parents('tr').children('#user_street_nameLike').text();
        $('#address_id').val(address);
        userAddress = address;
    });
Java用的是PageHelper分页插件,自己都不知道自己怎么做出来的,而且有大量的代码冗余。。。上面的代码,是对模糊查询出来的数据进行分页的。效果图如下:
![对模糊查询出来的数据进行分页处理](https://img-blog.csdnimg.cn/20200323154618537.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTk4OTM2Ng==,size_16,color_FFFFFF,t_70)![对模糊查询出来的数据进行分页处理](https://img-blog.csdnimg.cn/20200323154644949.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTk4OTM2Ng==,size_16,color_FFFFFF,t_70)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值