例如:打开一个新页面的同时,传数据。
layer.open({
type: 2,
title: '新增项目',
shadeClose: false,
shade: [0.3],
maxmin: true, //开启最大化最小化按钮
area: ['900px', '90%'],
scrollbar: false, //屏蔽滚动条
content: 'operate.html?type=add&buildingId=' + buildingId + '&businessId=' + businessId
});

=======================================

// 在新的页面: 操作类型:add新增,edit修改,view查看
var operateType = QueryUtils.GetQueryString("type");
switch (operateType) {
case "add":
break;
  case "edit":
break;
  case "view":
break;
}

=======================================

这个是layui中的table分页
table.render({
elem: '#roomTable',
url: '/room/json/',
page: true,
limit: 20,
height: 'full-150',
where: data,
cols: [[
{field: 'ROWNUM', fixed: true}
/*, {field: 'ROOM_NAME', title: '名称', width: 84}*/
, {field: 'ROOM_NUM', title: '编号', width: 100}
, {field: 'NAME', title: '项目类型', width: 100}
, {field: 'ROOM_AREA', title: '面积(㎡)', width: 100}
, {field: 'UNIT_NAME', title: '单元', width: 80}
, {field: 'FLOOR_NAME', title: '楼层', width: 80}
, {field: 'PROPERTY_RIGHT_TYPE', title: '产权所属', templet: '#prorigTpl', width: 120}
, {field: 'ROOM_INFO', title: '备注', width: 100}
, {field: 'CREATE_NAME', title: '创建人', width: 120}
, {field: 'CREATE_DATE', title: '创建时间', width: 180, align: 'center'}
, {field: 'IS_OPEN', title: '是否开启', templet: '#statusTpl', width: 100, align: 'center'}
, {fixed: 'right', title: '操作', width: 360, align: 'center', toolbar: '#barDemo'}
]]
});

controller层:

 /**
* 返回list 列表
*/
@RequestMapping(value = "/json")
@ResponseBody
public Object json(Page page) {
PageData pd = new PageData();
Map<String, Object> map = new HashMap<String, Object>();
List<PageData> varList;
String datalayui = null;
//获取当前登录用户
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
User user = (User) session.getAttribute(Const.SESSION_USER);
try {
//测试分页 导出为layui的json数据
pd = this.getPageData();
pd.put("USER_ID", user.getUSER_ID());
getPData(page, pd);//必填 2参
varList = roomService.list(page); //列出Building列表
datalayui = getLData(page, varList);//必填 3参
} catch (Exception e) {
logger.error(e.toString(), e);
} finally {
logAfter(logger);
}
return datalayui;
} 这个是page包装类:
package com.fh.entity;

import com.fh.util.Const;
import com.fh.util.PageData;
import com.fh.util.Tools; public class Page { private int showCount; //每页显示记录数
private int totalPage; //总页数
private int totalResult; //总记录数
private int currentPage; //当前页
private int currentResult; //当前记录起始索引
private boolean entityOrField; //true:需要分页的地方,传入的参数就是Page实体;false:需要分页的地方,传入的参数所代表的实体拥有Page属性
private String pageStr; //最终页面显示的底部翻页导航,详细见:getPageStr();
private PageData pd = new PageData(); public Page(){
try {
this.showCount = Integer.parseInt(Tools.readTxtFile(Const.PAGE));
} catch (Exception e) {
this.showCount = 15;
}
} public int getTotalPage() {
if(totalResult%showCount==0)
totalPage = totalResult/showCount;
else
totalPage = totalResult/showCount+1;
return totalPage;
} public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
} public int getTotalResult() {
return totalResult;
} public void setTotalResult(int totalResult) {
this.totalResult = totalResult;
} public int getCurrentPage() {
if(currentPage<=0)
currentPage = 1;
if(currentPage>getTotalPage())
currentPage = getTotalPage();
return currentPage;
} public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
} public String getPageStr() {
StringBuffer sb = new StringBuffer();
if(totalResult>0){
sb.append(" <ul>\n");
if(currentPage==1){
sb.append(" <li><a>共<font color=red>"+totalResult+"</font>条</a></li>\n");
sb.append(" <li><input type=\"number\" value=\"\" id=\"toGoPage\" style=\"width:50px;text-align:center;float:left\" placeholder=\"页码\"/></li>\n");
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"toTZ();\" class=\"btn btn-mini btn-success\">跳转</a></li>\n");
sb.append(" <li><a>首页</a></li>\n");
sb.append(" <li><a>上页</a></li>\n");
}else{
sb.append(" <li><a>共<font color=red>"+totalResult+"</font>条</a></li>\n");
sb.append(" <li><input type=\"number\" value=\"\" id=\"toGoPage\" style=\"width:50px;text-align:center;float:left\" placeholder=\"页码\"/></li>\n");
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"toTZ();\" class=\"btn btn-mini btn-success\">跳转</a></li>\n");
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"nextPage(1)\">首页</a></li>\n");
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+(currentPage-1)+")\">上页</a></li>\n");
}
int showTag = 5;//分页标签显示数量
int startTag = 1;
if(currentPage>showTag){
startTag = currentPage-1;
}
int endTag = startTag+showTag-1;
for(int i=startTag; i<=totalPage && i<=endTag; i++){
if(currentPage==i)
sb.append("<li><a><font color='#808080'>"+i+"</font></a></li>\n");
else
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+i+")\">"+i+"</a></li>\n");
}
if(currentPage==totalPage){
sb.append(" <li><a>下页</a></li>\n");
sb.append(" <li><a>尾页</a></li>\n");
}else{
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+(currentPage+1)+")\">下页</a></li>\n");
sb.append(" <li style=\"cursor:pointer;\"><a onclick=\"nextPage("+totalPage+")\">尾页</a></li>\n");
}
sb.append(" <li><a>第"+currentPage+"页</a></li>\n");
sb.append(" <li><a>共"+totalPage+"页</a></li>\n"); sb.append(" <li><select title='显示条数' style=\"width:55px;float:left;\" onchange=\"changeCount(this.value)\">\n");
sb.append(" <option value='"+showCount+"'>"+showCount+"</option>\n");
sb.append(" <option value='10'>10</option>\n");
sb.append(" <option value='20'>20</option>\n");
sb.append(" <option value='30'>30</option>\n");
sb.append(" <option value='40'>40</option>\n");
sb.append(" <option value='50'>50</option>\n");
sb.append(" <option value='60'>60</option>\n");
sb.append(" <option value='70'>70</option>\n");
sb.append(" <option value='80'>80</option>\n");
sb.append(" <option value='90'>90</option>\n");
sb.append(" <option value='99'>99</option>\n");
sb.append(" </select>\n");
sb.append(" </li>\n"); sb.append("</ul>\n");
sb.append("<script type=\"text/javascript\">\n"); //换页函数
sb.append("function nextPage(page){");
sb.append(" top.jzts();");
sb.append(" if(true && document.forms[0]){\n");
sb.append(" var url = document.forms[0].getAttribute(\"action\");\n");
sb.append(" if(url.indexOf('?')>-1){url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" url = url + page + \"&" +(entityOrField?"showCount":"page.showCount")+"="+showCount+"\";\n");
sb.append(" document.forms[0].action = url;\n");
sb.append(" document.forms[0].submit();\n");
sb.append(" }else{\n");
sb.append(" var url = document.location+'';\n");
sb.append(" if(url.indexOf('?')>-1){\n");
sb.append(" if(url.indexOf('currentPage')>-1){\n");
sb.append(" var reg = /currentPage=\\d*/g;\n");
sb.append(" url = url.replace(reg,'currentPage=');\n");
sb.append(" }else{\n");
sb.append(" url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";\n");
sb.append(" }\n");
sb.append(" }else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" url = url + page + \"&" +(entityOrField?"showCount":"page.showCount")+"="+showCount+"\";\n");
sb.append(" document.location = url;\n");
sb.append(" }\n");
sb.append("}\n"); //调整每页显示条数
sb.append("function changeCount(value){");
sb.append(" top.jzts();");
sb.append(" if(true && document.forms[0]){\n");
sb.append(" var url = document.forms[0].getAttribute(\"action\");\n");
sb.append(" if(url.indexOf('?')>-1){url += \"&"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" url = url + \"1&" +(entityOrField?"showCount":"page.showCount")+"=\"+value;\n");
sb.append(" document.forms[0].action = url;\n");
sb.append(" document.forms[0].submit();\n");
sb.append(" }else{\n");
sb.append(" var url = document.location+'';\n");
sb.append(" if(url.indexOf('?')>-1){\n");
sb.append(" if(url.indexOf('currentPage')>-1){\n");
sb.append(" var reg = /currentPage=\\d*/g;\n");
sb.append(" url = url.replace(reg,'currentPage=');\n");
sb.append(" }else{\n");
sb.append(" url += \"1&"+(entityOrField?"currentPage":"page.currentPage")+"=\";\n");
sb.append(" }\n");
sb.append(" }else{url += \"?"+(entityOrField?"currentPage":"page.currentPage")+"=\";}\n");
sb.append(" url = url + \"&" +(entityOrField?"showCount":"page.showCount")+"=\"+value;\n");
sb.append(" document.location = url;\n");
sb.append(" }\n");
sb.append("}\n"); //跳转函数
sb.append("function toTZ(){");
sb.append("var toPaggeVlue = document.getElementById(\"toGoPage\").value;");
sb.append("if(toPaggeVlue == ''){document.getElementById(\"toGoPage\").value=1;return;}");
sb.append("if(isNaN(Number(toPaggeVlue))){document.getElementById(\"toGoPage\").value=1;return;}");
sb.append("nextPage(toPaggeVlue);");
sb.append("}\n");
sb.append("</script>\n");
}
pageStr = sb.toString();
return pageStr;
} public void setPageStr(String pageStr) {
this.pageStr = pageStr;
} public int getShowCount() {
return showCount;
} public void setShowCount(int showCount) { this.showCount = showCount;
} public int getCurrentResult() {
currentResult = (getCurrentPage()-1)*getShowCount();
if(currentResult<0)
currentResult = 0;
return currentResult;
} public void setCurrentResult(int currentResult) {
this.currentResult = currentResult;
} public boolean isEntityOrField() {
return entityOrField;
} public void setEntityOrField(boolean entityOrField) {
this.entityOrField = entityOrField;
} public PageData getPd() {
return pd;
} public void setPd(PageData pd) {
this.pd = pd;
} 这个是:PageData类:
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set; import javax.servlet.http.HttpServletRequest; public class PageData extends HashMap implements Map{ private static final long serialVersionUID = 1L; Map map = null;
HttpServletRequest request; public PageData(HttpServletRequest request){
this.request = request;
Map properties = request.getParameterMap();
Map returnMap = new HashMap();
Iterator entries = properties.entrySet().iterator();
Entry entry;
String name = "";
String value = "";
while (entries.hasNext()) {
entry = (Entry) entries.next();
name = (String) entry.getKey();
Object valueObj = entry.getValue();
if(null == valueObj){
value = "";
}else if(valueObj instanceof String[]){
String[] values = (String[])valueObj;
for(int i=0;i<values.length;i++){
value = values[i] + ",";
}
value = value.substring(0, value.length()-1);
}else{
value = valueObj.toString();
}
returnMap.put(name, value);
}
map = returnMap;
} public PageData() {
map = new HashMap();
} @Override
public Object get(Object key) {
Object obj = null;
if(map.get(key) instanceof Object[]) {
Object[] arr = (Object[])map.get(key);
obj = request == null ? arr:(request.getParameter((String)key) == null ? arr:arr[0]);
} else {
obj = map.get(key);
}
return obj;
} public String getString(Object key) {
return (String)get(key);
} @SuppressWarnings("unchecked")
@Override
public Object put(Object key, Object value) {
return map.put(key, value);
} @Override
public Object remove(Object key) {
return map.remove(key);
} public void clear() {
map.clear();
} public boolean containsKey(Object key) {
// TODO Auto-generated method stub
return map.containsKey(key);
} public boolean containsValue(Object value) {
// TODO Auto-generated method stub
return map.containsValue(value);
} public Set entrySet() {
// TODO Auto-generated method stub
return map.entrySet();
} public boolean isEmpty() {
// TODO Auto-generated method stub
return map.isEmpty();
} public Set keySet() {
// TODO Auto-generated method stub
return map.keySet();
} @SuppressWarnings("unchecked")
public void putAll(Map t) {
// TODO Auto-generated method stub
map.putAll(t);
} public int size() {
// TODO Auto-generated method stub
return map.size();
} public Collection values() {
// TODO Auto-generated method stub
return map.values();
} }
这个是:组装:getPData(page, pd);//必填 2参

import com.fh.entity.Page;
import com.fh.entity.system.User;
import com.fh.util.*;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import javax.xml.crypto.Data;
import java.util.List; public class GetDatalayui {
protected static Logger logger = Logger.getLogger(GetDatalayui.class);
public static void getPData(Page page, PageData pd) {
//分页暂时设置状态
page.setShowCount(Integer.parseInt(pd.get("limit").toString()));
page.setCurrentPage(Integer.parseInt(pd.get("page").toString()));
page.setPd(pd);
} public static String getLData(Page page, List<PageData> varList) {
String start="{\"code\":0,\"msg\":\"\",\"count\":" +page.getTotalResult()+",\"data\":";
String end="}";
//返回layui table接收的json数据
String datalayui = null;
if (varList != null && varList.size() > 0) {
for (int i = 0; i < varList.size(); i++) {
varList.get(i).put("ROWNUM", (page.getCurrentPage() - 1) * 10 + i + 1);
}
}
datalayui= JSONHelper.array2json(varList);
datalayui=start+datalayui+end;
return datalayui;
}
public static String getusername(){
//获取当前登录用户
Subject currentUser = SecurityUtils.getSubject();
Session session = currentUser.getSession();
User user = (User) session.getAttribute(Const.SESSION_USER);
return user.getUSERNAME();
} public static int getPageTotal(int num,int pageCount,Page page){
page.setTotalResult(num+pageCount);
return num+pageCount;
}
}


在layui中,新的页面怎么获取另一个页面传过来的数据,并可以对数据进行判断,layui中的后台分页(table)。的更多相关文章

  1. 网站开发进阶(十一)如何将一个jsp页面嵌套在另一个页面中

    如何将一个jsp页面嵌套在另一个页面中 这个在做网页中常要用到,有些通用的内容可集中放在一个页面文件中,其它要用到这些内容的页面只需要包含(引用)这个通用文件即可.这样便于维护,如果有很多网页,当通用 ...

  2. 网站开发进阶(十)如何将一个html页面嵌套在另一个页面中

    如何将一个html页面嵌套在另一个页面中 1.IFrame引入 <IFRAME NAME="content_frame" width=100% height=30 margi ...

  3. asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!)

    原文:asp.net使用post方式action到另一个页面,在另一个页面接受form表单的值!(报错,已解决!) 我想用post的方式把一个页面表单的值,传到另一个页面.当我点击Default.as ...

  4. 使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. JS标签获取另一个页面传过来的href值

    a href=b.html?id=楼主>B页面</a>b.html中的获取函数:function getParam(){C1=window.location.href.split(& ...

  6. Vue中this.$router.push参数获取(通过路由传参)【路由跳转的方法】

    传递参数的方法: 1.Params 由于动态路由也是传递params的,所以在 this.$router.push() 方法中 path不能和params一起使用,否则params将无效.需要用nam ...

  7. PHP获取生成一个页面的数据库查询次数(转)

    很多博客软件都有这么一个功能,比如“生成本次页面一共花费了xx毫秒,进行了xx次数据库查询”等等.那么这个功能是如何实现的呢,下面我大概说下思路. 1. 在类的构造函数中声明全局变量 定义一个全局变量 ...

  8. 如何将一个HTML页面嵌套在另一个页面中

    一 在原页面嵌入其他页面 1.使用iframe框架 客户端页面嵌套可以使用iframe的方法,弊端是必须事先想好被嵌套的页面在首页中要占多大的位置. 如果被嵌套页面太大,超过事先定义的宽度或高度,则首 ...

  9. vue中路由返回上一个页面,恢复到上一个页面的滚动位置

    第一步:路由文件的配置(对你所需要的vue文件进行保存缓存标志的添加) import Vue from 'vue' import Router from 'vue-router' import Hel ...

随机推荐

  1. linux MySql 在 Master 主从复制配置

    在 Master 服务器上建立用于 Slave 服务器复制数据的帐户 [root@master ~]# mysql mysql> grant replication slave,replicat ...

  2. 连接数据库出现错误:1045-Access denied for user 'root'@'localhost'解决方法

    Navicat for MySQL 链接: https://pan.baidu.com/s/1slwQxVB 密码: r737 1.出现这个问题的原因之一是权限的问题,也就是说你的电脑可能没有权限访问 ...

  3. Codeforces Round #573 (Div. 2) D. Tokitsukaze, CSL and Stone Game (博弈,思维)

    D. Tokitsukaze, CSL and Stone Game time limit per test1 second memory limit per test256 megabytes in ...

  4. BZOJ 2560: 串珠子 (状压DP+枚举子集补集+容斥)

    (Noip提高组及以下),有意者请联系Lydsy2012@163.com,仅限教师及家长用户. 2560: 串珠子 Time Limit: 10 Sec Memory Limit: 128 MB Su ...

  5. 神经风格转换 (Neural-Style-Transfer-Papers)

    原文:https://github.com/ycjing/Neural-Style-Transfer-Papers Neural-Style-Transfer-Papers Selected pape ...

  6. bzoj5089 最大连续子段和 分块+复杂度分析+凸包

    题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=5089 题解 本来打算迟一点再写这个题解的,还有一个小问题没有弄清楚. 不过先写一下存个档吧. ...

  7. cookie、session和中间件

    目录 cookie和session cookie与session原理 cookie Google浏览器查看cookie Django操作cookie 获取cookie 设置cookie 删除cooki ...

  8. 安卓手机通过有线连接PC上网

    因手机wifi坏了,速度上限为2.5m/s.无法发挥出100m带宽的威力. 这里探索各大神的指导,记录下其中一种方式. :链接       主题:使用openvpn和手机的USB共享网络 通过mico ...

  9. A1009

    两个多项式的乘积 两个数组,一个放多项式1,一个放结果 注意:arr2[j+exp]+=arr1[j]*coe; 因为有指数相加相同的情况下需要合并系数 #include<cstdio> ...

  10. 算法题常见的BUG错误(总结)

    1. 快排的partition if(l >= r) return ; int i = l, j = r; int tmp = v[i]; while(i < j) { while(i & ...