整理:struts2里如何给不同的按钮赋予不同的处理逻辑
2010-07-03 16:44
471 查看
以一个登录注册场景为例:
1.使用actionName!methodName.action 即动态方法
jsp
struts.xml
LoginAction.java
2.为每个action指定method
jsp
struts.xml
LoginAction.java同方法1.
3. 使用*通配符
jsp
struts.xml
这里需要注意的是method必须是="{1}",有的教程上写="{0}",这样会找不到方法。
1.使用actionName!methodName.action 即动态方法
jsp
<mce:script type="text/javascript"><!-- function regist() { loginForm.action = "Login!register.action"; loginForm.submit(); } function login() { loginForm.action = "Login!login.action"; loginForm.submit(); } // --></mce:script> <s:form name="loginForm" action="" method="post"> <s:textfield name="userid" label="用户名"></s:textfield> <s:password name="passwd" label="密码"></s:password> <br /> <input type="button" onclick="login()" value="登录" /> <input type="button" onclick="regist()" value="注册" /> </s:form>
struts.xml
<struts> <package name="struts2" extends="struts-default"> <action name="Login" class="com.zt.action.LoginAction"> <result>/welcome.jsp</result> <result name="input">/login.jsp</result> <result name="error">/error.jsp</result> </action> </package> </struts>
LoginAction.java
public String login() throws Exception { System.out.println("login() is invoked!"); return SUCCESS; } public String register() throws Exception { System.out.println("register() is invoked!"); return SUCCESS; }
2.为每个action指定method
jsp
<mce:script type="text/javascript"><!-- function regist() { loginForm.action = "Login.action"; loginForm.submit(); } function login() { loginForm.action = "Regist.action"; loginForm.submit(); } // --></mce:script> <s:form name="loginForm" action="" method="post"> <s:textfield name="userid" label="用户名"></s:textfield> <s:password name="passwd" label="密码"></s:password> <br /> <input type="button" onclick="login()" value="登录" /> <input type="button" onclick="regist()" value="注册" /> </s:form>
struts.xml
<struts> <package name="struts2" extends="struts-default"> <action name="Login" class="com.zt.action.LoginAction" method="login"> <result>/welcome.jsp</result> <result name="input">/login.jsp</result> <result name="error">/error.jsp</result> </action> <action name="Regist" class="com.zt.action.LoginAction" method="register"> <result>/welcome.jsp</result> <result name="input">/login.jsp</result> <result name="error">/error.jsp</result> </action> </package> </struts>
LoginAction.java同方法1.
3. 使用*通配符
jsp
<mce:script type="text/javascript"><!-- function regist() { loginForm.action = "loginAction.action"; loginForm.submit(); } function login() { loginForm.action = "registerAction.action"; loginForm.submit(); } // --></mce:script> <s:form name="loginForm" action="" method="post"> <s:textfield name="userid" label="用户名"></s:textfield> <s:password name="passwd" label="密码"></s:password> <br /> <input type="button" onclick="login()" value="登录" /> <input type="button" onclick="regist()" value="注册" /> </s:form>
struts.xml
<struts> <package name="struts2" extends="struts-default"> <action name="*Action" class="com.zt.action.LoginAction" method="{1}"> <result>/welcome.jsp</result> <result name="input">/login.jsp</result> <result name="error">/error.jsp</result> </action> </package> </struts>
这里需要注意的是method必须是="{1}",有的教程上写="{0}",这样会找不到方法。
相关文章推荐
- 如何在UWP中统一处理不同设备间的页面回退逻辑
- listview中有按钮、图片等需要不同点击处理的控件如何处理
- ionic2如何处理android硬件返回按钮
- iOS-按钮单选与多选逻辑处理
- 如何快速处理海量数据及SQL优化整理
- php中,控制器如何调用模型来处理业务逻辑?
- 【SSH网上商城项目实战24】Struts2中如何处理多个Model请求
- AJAX技巧:如何处理书签和后退按钮(1)
- Android Studio:如何处理不同引用库(module)里jar的重复引用
- struts2中如何处理404?
- Asp.net中如何处理一个站点不同Web应用通用Session的问题
- [Phonegap+Sencha Touch] 移动开发47 NavigationView如何根据不同的View显示不同的顶栏按钮
- yii CGridView 如何根据字段值来显示不同的自定义按钮或者文字或不同样式(转)
- struts2如何返回json和处理json
- 如何处理C++构造函数中的错误——兼谈不同语言的错误处理
- 【SSH网上商城项目实战24】Struts2中如何处理多个Model请求
- 未报价快递损毁如何处理(网上信息整理)
- 如何用不同的方式来处理安卓的权限管理?
- AJAX:如何处理书签和后退按钮
- iOS:按钮连续点击 按钮快速点击 如何处理