0

選択状態 ([checkboxOn/checkboxOff]) に応じて、チェック ボックスが表示されるかどうかが表示されるフォームがあります。チェックボックスが表示される場合、デフォルトでオンになっている必要があります。

それを考慮して、その状況をどのように処理するか

  • 選択が「checkboxOff」状態の場合、MyFormObject.isCheckboxOn == false; になります。
  • 選択が「checkboxOn」状態の場合、値は要求どおりにする必要がありますか?

これはすべて、検証エラーのポストバック、および新しいフォームが表示されたときと有効なフォームケースでも機能するはずです。

また、クライアント側で JavaScript を使用することは避けたいと思います。

拡張が必要な​​コードを次に示します。

class MyFormObject {
  private String selectValue;
  private boolean isCheckboxOn;
  ...
}

および 2 つの Spring コントローラーのメソッド:

@RequestMapping(method = RequestMethod.GET)
public ModelAndView showForm() {
  return new ModelAndView('/form.jsp', 'command', new MyFormObject());
}

@RequestMapping(method = RequestMethod.POST)
public ModelAndView processSubmit(BindingResult result, MyFormObject command) {
  if (result.hasErrors()) {
    return new ModelAndView('/form', 'command', command);
  }
  ...
  return new ModelAndView('redirect:/success.jsp');
}
4

1 に答える 1

0

isCheckboxOn が false に設定されているときにチェックボックス フィールドをビューから除外する場合は、JSP でチェックボックス フィールドを ac:if で囲むことができます。

<c:if test="isCheckboxOn">
    (your checkbox <input> tag goes here)
</c:if>

デフォルトでボックスをチェックするには、Spring のフォーム タグ ライブラリを使用してモデルのチェックボックス フィールドに直接バインドするか、別のライブラリを使用してタグc:ifに を追加checkedします<input>

于 2010-12-30T19:42:53.373 に答える