【发布时间】:2016-03-23 15:44:57
【问题描述】:
我正在使用 struts 2.3.24
我想将一些参数传递给动作类。这是我的链接。
<a id = "errorOid"
type = "submit"
href = "<s:url action="SortIssue"><s:param name="sortField" value="ISSUE_OID"/></s:url>">
Error Oid
</a>
当我点击链接时,它会转到 action 方法,但 sortField 总是为空。
这是我的行动:
<action name="SortIssue" method="sortIssue" class="foo.bar.IssueAction">
<result name="success">/WEB-INF/issue.jsp</result>
<result name="input">/WEB-INF/issue.jsp</result>
<result name="login" type="redirectAction">Login</result>
<interceptor-ref name="user-submit" />
</action>
这是点击链接时调用的方法。
public String sortIssue() throws ServiceFatalException,ServiceExpectedException{
Log.error(this,"################## inside sort ###################"+sortField);
return SUCCESS;
}
我的问题是:
如何获取jsp传过来的参数?
也可以点击链接后获取隐藏参数吗?
注意:当我在迭代器中使用它时,传递参数的东西可以正常工作。
【问题讨论】:
-
尝试在文本已经用双引号括起来的地方使用单引号。通常struts 2框架会自动获取一个字段的值(仅由struts 2标签呈现),如果在属性的action类中定义了可访问的setter和getter
-
而且我认为如果您单击链接,则不会传递隐藏字段值。仅当您提交表单时才会传递此类字段
-
用引号表示这是一个字符串。
-
@SacJn:是的。我需要将提交按钮的 css 更改为看起来像命令链接(锚),以使其工作。
-
@Andrea Ligios :我有一个表格,我为每个标题放置了排序功能。我需要获取旧的排序(sortBy 和 sortOrder)以及新的 sortBy。通过传递参数,我可以获得新的 sortBy。因此,如果我想要旧的排序,我需要将其隐藏并通过提交按钮更改锚标记。我更改了提交按钮的 css 使其看起来类似于锚标记。
标签: java html forms jsp struts2