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

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

最佳答案

好吧,您可以利用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,您可以根据自己的选择使用它
详情


multiple-submit-buttons

09-30 19:01