首先,由于之前没用过json,初学extjs使用json封装数据以为不用导入任何包,并且百度上说json需要的包struts包中都有(此说话是正确的,不过json要的包必须再导入)。 郁闷了一两天的问题终于解决了。下面是我自己做的一个ssh + extjs 4 登录的小例子,无数据验证。
要添加的包,直接放到lib下即可
1.Action代码
public class ExtjsAction extends BaseAction {
//声明相关的属性,用来封装数据,json封装数据和struts2有些想象,前台到后台会自动封装
private String username;//对应页面上的用户名文本框name
private String password;
private boolean success;//用来保存success信息,传到前台
private String msg;
public String logins(){
System.out.println(username + "+++" + password);
//String res = "{success:true,msg:\"account right!\"}";
//String res = "{success:false,msg:\"account right!\"}";
this.success = true;
this.msg = "aa";
String js = "{'success':true,'msg':'登录成功'}";
//outputAjaxJsonData(js);
return SUCCESS;
}
2. Struts 配置文件代码
<package name="ext2" extends="json-default">
<action name="loginExt" class="org.comm.action.ExtjsAction">
<result type="json">
<param name="includeProerties">success,msg</param>
</result>
</action>
</package>
3. Jsp或者html 代码
<link rel="stylesheet" type="text/css" href="../resources/css/ext-all.css">
<script type="text/javascript" src="../ext-all.js"></script>
<script type="text/javascript">
Ext.onReady(function(){
Ext.QuickTips.init();
var loginWindo = new Ext.form.FormPanel({
title:'Login',//窗口标题
id:'elId',//给form添加id
autoHeight:true,//自动高度(根据英文自己理解的)
x:200,//x坐标
y:120,//y坐标
width:300,//宽度
renderTo:Ext.getBody(),
frame:true,
cls:'text-align:center',//文本居中显示
items:[
//username
{
xtype:'textfield',
name:'username',//对应action中属性名
fieldLabel:'name',//label上的名字
allowBlank:false,//是否为空
blankText:'please input name.',//空时提示文本msgTarget:'under'
}
],
buttonAlign:'center',
buttons:[{
xtype:'button',
text:'logins',
scope:this,
handler:logins
},{
xtype:'button',
text:'reset',
scope:this,
handler:reset
}]
});
//登录方法
function logins(){
loginWindo.form.submit({
clientValidation:true,
waitMsg:'正在登录中。。。',//单击登录按钮后提示消息
url:'ext2/loginExt!logins.action',
method:'POST',
success:function(form,action){
var jsontext = Ext.decode(action.response.responseText);
Ext.Msg.alert('登录提示',"登录成功"+jsontext.msg);
},
failure:function(){
Ext.Msg.alert('登录提示','登录失败');
}
});
}
//重置
function reset(){
loginWindo.form.reset();
}
//显示登录窗口
loginWindo.show();
});
</script>
有问题可以联系我
http://hi.baidu.com/danforgtlove/item/e9d4d8e0dad25fcbeb34c9f5
相关推荐
SSH+ExtJs分页小例子
搭建的ssh+extjs的框架,已投入使用
该demo为Spring2.0+struts2.0+hibernate3 +extjs4.0整合开发得demo。希望对想了解extjs4的同学有帮助!没资源分了挣点资源分!
ssh+extjs+mysql整合
最近自己动手做了一个后台使用struts2+Hibernate+Spring 前台使用extjs的工程当作练习。工程实现的功能很简单,就是用户登陆后,可以将笔记内容记录到系统里。后续可以通过日期或者内容进行查询和修改。 主要的练习...
SSH+EXTJS4 的一个模块实现,使用的是mysql数据库,sql文件在文件夹里面
SSH+Extjs开发视频教程-基于SSH+Maven+Extjs4+MySQL技术实战开发CRM客.doc
SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统SSH+EXTJS页面图书管理系统
这是一个基于EXTJS+SSH+ORACLE实现的demo,完整的前台到后台的实现,有需要的朋友拿去吧···
spring3.1+struts2.3+hibernate4+extjs4.1 项目中的功能有注册登录,人员维护,项目维护,权限管理,统计(采用extjs chart),分页,查询等功能
ssh+extjs+json
struts2+spring+hibernate整合(ssh+extjs整合)小项目“VIP消费查询系统”源码(源码+系统设计文档+建表语句+所有jar包)。该项目包含以下功能: 登录:本系统为商场VIP消费情况查询系统,具有一定的保密性。因此必须...
很基础,包含ssh框架+extjs4+flash的上传下载 播放,由于是以前的项目,可能有些地方还很不成熟。
SSH + EXTJS_管理系统.rarSSH + EXTJS_管理系统.rarSSH + EXTJS_管理系统.rar
ssh整合实现登录的例子,包含源代码,用extjs做的登录界面,作为新手入门的好东西,不下会后悔的。。。
SSH+extjs做的简易论坛_Italk吧_SSH+extjs做的简易论坛_Italk吧_SSH+extjs做的简易论坛_Italk吧_
ssh文件是struts2.3.15,hibernate4.2.5 spring3.2.4 extjs4.2.1
ssh+extjs spring定时任务
ssh+extjs的一个小例子,分享,顺便用来备份总结方便以后查阅。