0

複数の行があり、各行の最後に [ステータスの変更] ボタン [送信] ボタンがあるページがあります。10 以上のステータスが存在します。[ステータスの変更] ボタンをクリックすると、コントロールがアクション クラスに移動し、変更されたステータスでページがリロードされます。

各行に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();
   }
}

したがって、短い値は一意のIDである可能性があり、詳細については選択に従って実際に使用できます

于 2012-08-31T05:38:22.267 に答える
0

行ごとに異なるフォームを作成できます。すべてのフォームは

<s:hidden />

行のIDで。このようにして、どれがクリックされた送信であるかを常に知ることができます。

于 2012-09-01T10:10:25.437 に答える
0

id をフォームの一部として追加すると、送信時にパラメーターとして id を受け取ることができます。JavaScriptは必要ありません。

于 2012-08-31T05:38:18.170 に答える