tp5页面输出时,搜索后跳转下一页的处理
2018-06-22 04:57:26来源:未知 阅读 ()
tp5页面输出时,搜索功能在跳转下一页时,如果不做任何处理,会返回原有是第二页输出的数据。为了保证跳转下一页时输出的是搜索到的数据,做以下处理。
(要根据自己的搜索字段进行适当修改)
页面js代码,给地址栏加上参数,以便于点击搜索按钮后台通过地址栏得到搜索条件。
$(document).ready(function(){
//点击搜索按钮执行搜索 $("#search").click(function() { var form = $('#form'); var url = form.attr('action'); var query = $('.key').serialize(); query = query.replace(/(&|^)(\w*?\d*?\-*?_*?)*?=?((?=&)|(?=$))/g, ''); query = query.replace(/^&/g, ''); if (url.indexOf('?') > 0) { url += '&' + query; } else { url += '?' + query; } form.attr('action',url); }); //回车搜索 $(".search-form").keyup(function(e) { if (e.keyCode === 13) { $(".search").click(); return false; } });
//设定input框的值,保留搜索条件,setValue的方法参照http://www.cnblogs.com/xiaopiyuanzi/p/5920864.html setValue('shop_id', "{:input('get.shop_id')}"); setValue('key', "{:input('get.key')}"); })
搜索部分页面html代码
<div class="search search-form" style="background: #e0e0e0;margin-bottom: 10px"> <form action="{:url('news')}" id="form" method="post" <table border="0" style="height: 50px;font-size: 15px;color: black;" cellpadding="5" width="35%"> <tr> <td>商品类: <select name="shop_id" class="key"> <option value="all">全部</option> {volist name='li' id='k'} <option value="{$k.id}">{$k.name}</option> {/volist} </select> </td> <td>标题:<input type="text" name="key" class="key" class="inpMain" placeholder="新闻标题或标题包含字"></td> <td><input type="submit" id="search" class="btn" value="搜索" /></td> </tr> </table> </form> </div>
控制器主要代码
if (empty(input('get.'))) { $page = NewsModel::where('isdelete',1)->order('id desc')->paginate(8); $this->assign('list',$page); return $this->fetch(); } else { $shop_id=input('get.shop_id'); $key=input('get.key'); if ($shop_id=='all' && $key != '') { $page=NewsModel::where(['title'=>['like',"%$key%"],'isdelete'=>['eq',1]])->order('id desc')->paginate(8,false,[ 'query' => ['shop_id' => $shop_id,'key' => $key] //url额外参数 ]); } elseif ($shop_id != 'all' && $key != '') { $page=NewsModel::where(['title'=>['like',"%$key%"],'shop_id'=>['eq',$shop_id],'isdelete'=>['eq',1]])->order('id desc')->paginate(8,false,[ 'query' => ['shop_id' => $shop_id,'key' => $key] ]); } elseif ($shop_id != 'all' && $key == '') { $page=NewsModel::where(['shop_id'=>['eq',$shop_id],'isdelete'=>['eq',1]])->order('id desc')->paginate(8,false,[ 'query' => ['shop_id' => $shop_id,'key' => $key] ]); } else { $page=NewsModel::where('isdelete',1)->order('id desc')->paginate(8,false,[ 'query' => ['shop_id' => $shop_id,'key' => $key] ]); } $this->assign('list',$page); return $this->fetch(); }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- ThinkPHP3.1.x修改成功与失败跳转页面的方法 2020-03-22
- php不写闭合标签的好处 2020-02-24
- PHP实现数据库统计时间戳按天分组输出数据的方法 2019-12-27
- PHP实现HTML页面静态化的方法 2019-12-02
- php cc攻击代码与防范方法 2019-12-02
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash