1

フォームを送信するたびに、ページが更新されることを知っています。しかし、送信ボタンが入力された後にWebページをもう一度更新できるようにするJavaScriptなどを使用する方法はありますか?

どうもありがとうございました。

4

1 に答える 1

2

実装する必要があるのは、Grails アプリケーションで推奨される Post、Redirect、Get パターンだと思います。grails generate-controller [somedomainclassname] と入力すると、そのコントローラーが実際にこのパターンを採用していることがわかります。

次のように機能します。

  1. フォームはコントローラー内のアクションに送信されます。それを呼び出しましょうsave()
  2. アクションsave()は、実際にオブジェクトを保存するために必要な操作を実行します。完了すると、次のようにブラウザに「リダイレクト」を送信します。redirect(action: "show", id: mySavedObject.id)
  3. これにより、ブラウザーは URL /mycontroller/show/{id} に対して GET を発行します。
  4. そのリクエストはshow、コントローラーのアクションによって取得されます。次に、作成したばかりのオブジェクトを表示します。

このアプローチは、HTTP セマンティクスとうまく連携し、エンド ユーザーにとって煩わしい「フォーム データを再投稿しますか」という質問を避けることができます。

于 2012-11-26T16:41:07.717 に答える