对Struts的细节感到有点困惑,对于任何令人困惑的术语感到抱歉,我对使用Struts非常陌生。
我正在尝试让我的ActionForward Handler类识别JSP页面发送给它的不同Submit按钮输入以获得不同的结果。
目前我所拥有的是两个按钮:提交和取消。单击时,它们通过一个类中的验证方法将数据库信息传递到操作处理类(EditThis.doIt)中的另一个方法,我的任务是添加第三个按钮来删除此信息。我想要做的是添加一个删除按钮作为提交按钮,如下所示:
<div align="left">
<html:submit value="Submit" styleClass="button"/>
<html:cancel styleClass="button"/>
<html:submit value="Delete" styleClass="button"/>
</div>
但我不知道如何让ActionForward识别删除和提交之间的区别。我能做些什么,保持在Struts中,实现这一目标?
答案 0 :(得分:0)
我想我理解你的问题。当你点击提交按钮时,你在Action类中调用了“excute()”方法。但是你想点击删除按钮在同一个动作中做另一件事。就是这样。对? 如果我是对的,我的建议是
在struts.xml中声明另一个动作,并使用与提交按钮相同的动作类,声明此动作中要使用的方法。
这是我项目中的struts.xml
<action name="elecDeleteAction" class="com.gs.action.ElecAction" method="delete">
<result name="success">/elec/elecadmin/deletesuccess.jsp</result>
<result name="fail">/elec/elecadmin/deletefail.jsp</result>
</action>
<action name="elecIndexAction" class="com.gs.action.ElecAction" method="index">
<result name="success">/index.jsp</result>
</action>
这就是说使用属性“method”来声明要调用的方法。