Go
beego分页携带参数
beego分页携带参数
上篇文章向大家分享如何处理beego模版分页,这一篇跟大家分享如何在分页上携带参数,下面贴出代码。
一、后端控制器代码我们需要获取用户传过来的参数,然后要把这个参数再返回给用户,用于分页上处理,代码如下:
//获取参数 searchStatus, searchStatusErr := c.GetInt("searchStatus") if searchStatusErr != nil { searchStatus = 0 } searchAdminStatus, searchAdminStatusErr := c.GetInt("searchAdminStatus") if searchAdminStatusErr != nil { searchAdminStatus = 0 } searchCommentId, searchCommentIdErr := c.GetInt("searchCommentId") if searchCommentIdErr != nil { searchCommentId = 0 } searchArticleId, searchArticleIdErr := c.GetInt("searchArticleId") if searchArticleIdErr != nil { searchArticleId = 0 } //返回用户搜索参数 getInput := make(map[string]interface{}) getInput["SearchStatus"] = searchStatus //搜索-状态 getInput["SearchAdminStatus"] = searchAdminStatus //搜索-是否管理员 getInput["SearchArticleId"] = searchArticleId //搜索-文章Id c.Data["getInput"] = getInput //用户搜索参数
二、前端进行接收参数并赋值在分页上,点击下一页的时候再回传回给后端,从而达到分页的时候,参数不会丢,代码如下:
layui.use('laypage', function () { var laypage = layui.laypage; var searchTitle = {{.getInput.searchTitle}}; var searchTypeId = {{.getInput.searchTypeId}}; var searchLabelId = {{.getInput.searchLabelId}}; //执行一个laypage实例 laypage.render({ elem: 'page' //注意,这里的 page 是 ID,不用加 # 号 , count: {{.PageCount}} //获取数据总条数 , limit: {{.PageLimit}} //每页限制多少条 , curr:{{.PagePage}} //当前页码 , jump: function (obj, first) { //obj包含了当前分页的所有参数,比如: console.log(obj.curr); //得到当前页,以便向服务端请求对应页的数据。 console.log(obj.limit); //得到每页显示的条数 //首次不执行 if (!first) { window.location.href = "/adminArticleList?page=" + obj.curr + "&searchTitle=" + searchTitle + "&searchTypeId=" + searchTypeId + "&searchLabelId=" + searchLabelId } } }); });
这样就成功在分页上携带参数进行跳转。
0条评论