0

有一个页面,其中有多行,每行末尾都有一个“更改状态”按钮[一个“提交”按钮]。目前有十多种状态。当我单击“更改状态”按钮时,控件进入操作类,页面重新加载更改状态。

我有 id 与每一行相关联。当页面重新加载时,如何确定我在哪一行单击了“更改状态”按钮?我应该通过 java-script 将 id 传递给动作类吗?还有比这更简单的方法吗?

4

3 回答 3

2

好吧,您可以利用 Struts2 多提交按钮功能。就像您可以根据您的 ID 设置提交按钮值并在您的操作中收集它以您的方式使用它一样

<button type="submit" value="Submit" name="buttonName">
<button type="submit" value="Clear" name="buttonName">


class MyAction extends ActionSupport {
   private String buttonName;
   public void setButtonName(String buttonName) {
      this.buttonName = buttonName;
   }
   public String execute() {
      if ("Submit".equals(buttonName)) {
         doSubmit();
         return "submitResult";
      }
      if ("Clear".equals(buttonName)) {
         doClear();
         return "clearResult";
      }
      return super.execute();
   }
}

所以简而言之,uniqque id 可以是什么,您可以根据自己的选择在操作中使用它以获取详细信息

于 2012-08-31T05:38:22.267 回答
0

您可以将 id 添加为表单的一部分,这样您在提交时将收到 id 作为参数。不需要javascript。

于 2012-08-31T05:38:18.170 回答
0

您可以为每一行制作不同的表格。每个表格都可以有一个

<s:hidden />

与行的 id。通过这种方式,您始终知道单击的是哪个提交。

于 2012-09-01T10:10:25.437 回答