如何同时实现table标签的分页和搜索?

我原本table的分页功能使用的是thinkphp框架中的分页:

// 查询状态为1的用户数据 并且每页显示10条数据$list = Db::name('user')->where('status',1)->paginate(10);// 把分页数据赋值给模板变量list$this->assign('list', $list);// 渲染模板输出return $this->fetch();
<div><ul>{volist name='list' id='user'}
    <li> {$user.nickname}</li>{/volist}</ul></div>{$list->render()}

搜索功能则是自己写一个一小段JavaScript代码,代码就不贴出来了,只是对当前页面的table进行遍历查找,但这个代码只能对当前的页面进行搜索,无法对全部数据搜索。
如何能在搜索框输入数据后能马上跳转到该数据所在的页面并单独显示出来?希望大家能提供点思路。


www说
浏览 995回答 1
1回答

明月笑刀无情

根据你的问题,你现在的js代码是对当前页面的数据进行搜索然后将不符合数据过滤到,这样肯定只能过滤当前页的,如果要实现你所说的在全表搜索,那你需要重定向到这个路由,并且带上参数再查询一次数据来返回给前端,这样就可以得到所有你想得到的数据了。简单说下两个方法吧。控制器这么写 $cat&nbsp;=&nbsp;isset($_GET['cat'])&nbsp;?&nbsp;$_GET['cat']&nbsp;:&nbsp;''; $QB_logs&nbsp;=&nbsp;DB::where('qb_status',&nbsp;'e')->where(function($query)&nbsp;use&nbsp;($cat){&nbsp;&nbsp;&nbsp;&nbsp;if($cat)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$query->where('qb_action',&nbsp;'=',&nbsp;$cat); &nbsp;&nbsp;&nbsp;&nbsp;} }->select(); 前端这么写 {!!&nbsp;&nbsp;$QB_logs->appends(['cat'=>$cat])->render()&nbsp;!!} 这个是laravel的写法,具体到你的框架应该也差不多。第二个方法,如果你不想要页面跳转来重新加载数据的话,你可以考虑用datatable来渲染数据,这样也能达到你所说的效果。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript