使用Jquery进行搜索功能并在Laravel5中显示分页结果 [英] Search Function using Jquery and Display Paginated Results in Laravel5

查看:81
本文介绍了使用Jquery进行搜索功能并在Laravel5中显示分页结果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的控制器中,我将Json响应返回给ajax函数,而从ajax函数中,我必须分页显示此数据

In my controller i am returning Json response to ajax function and from ajax function i have to display this data with pagination

我在ajax成功函数中获得结果,但不知道如何在视图中的div内进行分页和显示

I get the results in ajax success function but dont know how to paginate and display inside a div in the view

到目前为止,我已经尝试了以下代码

So Far I have tried Following Code

$mpullethouse = DB::table('mpullethouses')->get();
return response()->json(['mpullethouses'=>$mpullethouse]);

jQuery

$.ajax({
        url : 'seachpullethouse',
        method : 'get',
        dataType : 'Json',
        data : formdata, 
        success : function(data){
       //here i have to paginate and display the results which i dont know
        }, 
        error : function(){
            alert('error');
        }
   });

有人可以帮助我吗?...

can any one please help me?...

推荐答案

var o = {"0":"1","1":"2","2":"3","3":"4","4":"5"};
var arr = $.map(o, function(el) { return el; });

var len = arr.length;

/* limit of grouping */
var n = 3;

$(".pagination").append('<a href="#" class="nav nav-left">&laquo;</a>');

/* grouping results */
var pageNo=0;
for(i=0; i<len; i+=n){
	pageNo++;
	var c = (i==0)?"active":"";
    $(".pagination").append('<a href="#" class="'+c+'">'+pageNo+'</a>');
    var j;
    var items="";
    var lim = n*pageNo;
    for(j=i; j<len && j<lim; j++){
    	items += arr[j]+"<br />";
    }
    $(".pages").append('<div class="page '+c+'">'+items+'</ div>');
}

$(".pagination").append('<a href="#" class="nav nav-right">&raquo;</a>');

/* to select {i+1}th link */
function selectLink(i){
    $(".pagination a").each(function(index){
    	if(i == index){
        	$(this).addClass("active");
        }else{
        	$(this).removeClass("active");
        }
    });
}

/* to show {i+1}th page */
function showPage(i){

    $(".page").each(function(index){
    	if((i-1) == index){
        	$(this).addClass("active");
        }else{
        	$(this).removeClass("active");
        }
    });
}

/*  */
$(".pagination a:not(.nav)").on('click',function(){
	var i = $(this).index(".pagination a");    
    selectLink(i);
    showPage(i);
});

/* previous page */
$(".pagination a.nav-left").on('click',function(){
	var i = $('.pagination a.active').index();
    if(1<i){
    	i--;
    	selectLink(i);
        showPage(i);
    }
});

/* next page */
$(".pagination a.nav-right").on('click',function(){
	var i = $('.pagination a.active').index();
    if(i < pageNo){
    	i++;
    	selectLink(i);
        showPage(i);
    }
});

.pagination {
    display: inline-block;
}

.pagination a {
    color: black;
    float: left;
    padding: 8px 16px;
    text-decoration: none;
}

.pagination a.active {
    background-color: #4CAF50;
    color: white;
}

.pagination a:hover:not(.active) {background-color: #ddd;}

/**/
.page{
    display:none;
}

.page.active{
    display:block;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="pages"></div>

<div class="pagination"></div>

此代码示例可能会为您提供帮助.

This code sample may help you.

这篇关于使用Jquery进行搜索功能并在Laravel5中显示分页结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆