最近在开发的过程中,,同事开发的一个好东东,现拿出来分享下
JS层:
//定义
var app={};
Ext.onReady(function(){});
//同步请求
app.SynXHR=function(url){
if (window.ActiveXObject) {
obj = new ActiveXObject('Microsoft.XMLHTTP');
}
else if (window.XMLHttpRequest) {
obj = new XMLHttpRequest();
}
obj.open('GET', url, false);
obj.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
obj.send(null);
return Ext.util.JSON.decode(obj.responseText);
}
//全局域.
app.GetSession=function(){
try{
var sessioninfo=app.SynXHR('jsplib/session.jsp?cmdType=get');
app.pno=sessioninfo.projectno;
app.pname=sessioninfo.projectname;
app.subno=sessioninfo.subno;
app.subname=sessioninfo.subname;
}catch(e){
Ext.Msg.alert('异常信息','请重新登录')
//window.location.href ='Login.html';
}
};
session.JSP层:
if(cmdType.equalsIgnoreCase("get")){//标记调用函数
GlobalInput tG=(GlobalInput)session.getValue("GI");//定义公共类
userno=tG.UserNo;
if(!userno.equalsIgnoreCase("admin")){
projectno=tG.ProjectNo;
projectname=tG.ProjectName;
subno=tG.SubNo;
subname=tG.SubName;
obj.put("userno",userno)//登入用户名
.put("projectno",projectno)//项目编号
.put("projectname",projectname)//项目名称
.put("subno",subno)//主体编号
.put("subname",subname);//主体名称
}
out.write(obj.toString());//输出格式为JSONObject
}
JAVA:
public class GlobalInput {
/** 当前操作员编码 */
public String UserNo;
/** 当前操作员 姓名*/
public String UserName;
/** 当前项目号*/
public String ProjectNo;
/** 当前项目名称 */
public String ProjectName;
/** 当前主体编号*/
public String SubNo;
/** 当前主体名称 */
public String SubName;
public GlobalInput() {
}
/**
* 两个GlobalInput对象之间的直接复制
*
* @param cGlobalInput
* 包含有具体值的GlobalInput对象
*/
public void setSchema(GlobalInput cGlobalInput) {
// 获取登陆用户基础信息:用户编码、管理机构等
this.UserNo = cGlobalInput.UserNo;
this.UserName = cGlobalInput.UserName;
this.ProjectNo = cGlobalInput.ProjectNo;
this.ProjectName = cGlobalInput.ProjectName;
this.SubNo = cGlobalInput.SubNo;
this.SubName = cGlobalInput.SubName;
}
}
这样,在实际调用的时候就很简单了,只需地onReady()中,直接使用app.userno,app.pno即可
分享到:
相关推荐
ExtJs中Store加载(load)时候提示信息
extjs tree 异步加载树型完整的一个web工程,自已已经试过,可用。
ExtJS viewmport指定路由,全局配置+ViewModel切换变量
此文件用于项目首页内容,使用了ExtJs中的GridPanel
Extjs4.2 动态加载项目(权限模块),直接下载下来即可使用,数据可自动生成。
AJAX: 以JSON数据格式,使用ExtJS构造动态异步加载的树。
Extjs动态菜单可添加子项和编辑子项,拖动保存、dwr实现存储数据。
NULL 博文链接:https://kaobian.iteye.com/blog/996146
NULL 博文链接:https://maoyi606.iteye.com/blog/1782825
在使用使用FormPanel时我们通常需要使用它的form对象来加载数据或提交数据。FormPanel中的 form对象为Ext.form.BasicForm类型的对象,它有load和submit方法分别用于加载数据和提交数据。而这两个方法都是通过调用 ...
extjs实现动态树加载菜单
自己由于使用extjs3,开发了一个动态加载js的管理器,类似extjs4的使用方式,但实现方式完全不一样,有兴趣的朋友可以下载后使用,欢迎吐槽
Ext3.3完整包 Ext3.3中文文档 数据表的结构是:数据表table > 记录record > 字段 store的结构是: Ext.data.Store > Ext.data.Record>Ext.dataDataField store 首先驱动 DataProxy 加载数据 ,DataProxy加载完成会...
extjs4.0中,不想一次性加载所有的controller,特别是那种tabPanel布局的时候,一个tab的内容对应一个controller的时候。可以通过动态创建controller的方式,还能遵循mvc设计规范。这个例子完美破解,经过测试。 ...
NULL 博文链接:https://firezhfox.iteye.com/blog/1885329
该文件中包含了一些实例:如何加载数据到extjs
Extjs 4.1 (MVC) 如何动态加载控制层以及session 过期该如何处理
extjs4,当点击左边的树,右边会生成相应的面板,代码精简,欢迎大家来学习,有问题可以直接交流。
extjs动态添加tabpanel标签页支持pannel嵌入 逻辑代码在 MyWindow.js里面直接调用 方法 就可以