1

我需要在一个表单中为不同的提交按钮调用不同的动作类,并在 struts2 中获取下拉列表的值。

学校学生页面的示例:

  1. 提交按钮 1:显示学术页面
  2. 提交按钮 2:显示运动页面
  3. 提交按钮 3:显示库页面等。

我尝试如下,但它不起作用。

代码:

<s:submit value="academic" action="academic" />
<s:submit value="sports" action="sports" />
<s:submit value="library" action="library" />

Generated html code gets 
<input name="action:academic">
<input name="action:sports">

我正在使用theme="simple"表单标签。

我通过 URL 标签尝试了它,但调用的操作没有将下拉字段值填充为学生卷。

struts.xml:

`

<package name="default" extends="struts-default">
    <action name="academics" class="ViewAcademics" > 
        <result name="success">pages/ViewAcademics.jsp</result> 
    </action> 
    <action name="sports" class="ViewSports" > 
        <result name="success">pages/ViewSports.jsp</result> 
    </action> 
    <action name="library" class="ViewLibrary" > 
        <result name="success">pages/ViewLibrary.jsp</result> 
    </action>
</package>

`

JSP 文件:

<s:form name="inquiryForm" method="post" theme="simple" > 
   Select roll no : 
   <s:select style="width: 200px;" 
      list="#{'1':'Student 01', '2':'Student 02', '3':'Student 03', '4':'Student 04'}"
      id="projectName" 
      name="studentRollNo" 
      readonly="false" 
      headerKey="-1" 
      headerValue="--- Select ---" 
   /> 
   <s:submit cssClass="page" action="academics" value="academics" /> 
   <s:submit cssClass="page" name="sports" value="sports" /> 
   <s:submit cssClass="page" name="library" value="library" /> 
</s:form>
4

1 回答 1

0

action在提交声明中使用属性:

<s:submit cssClass="page" action="academics" value="academics" /> 
<s:submit cssClass="page" action="sports" value="sports" /> 
<s:submit cssClass="page" action="library" value="library" />

studentRollNo并且您的所有操作都应该具有getter/setter变量。

于 2012-12-20T10:53:35.247 回答