提交后额外刷新

时间:2012-11-26 08:49:22

标签: grails refresh form-submit gsp submit-button

我知道无论何时提交表单,您都会刷新页面。但有没有一种方法可以使用javascript或其他任何方式让网页在输入提交按钮后再刷新一次?

非常感谢你们。

1 个答案:

答案 0 :(得分:2)

我猜你需要实现的是Post,Redirect,Get模式,这是Grails应用程序中推荐的方式。如果你输入grails generate-controller [somedomainclassname],你会看到该控制器实际上使用了这种模式。

它的工作原理如下:

  1. 您的表单提交控制器内的操作,我们称之为save()
  2. 您的save()操作会执行必要的操作以实际保存对象,完成后会向浏览器发送“重定向”,如下所示:redirect(action: "show", id: mySavedObject.id)
  3. 这将导致浏览器为url / mycontroller / show / {id}
  4. 发出GET
  5. 您的控制器的show操作会接收该请求。然后它继续显示刚刚创建的对象。
  6. 这种方法与HTTP语义相得益彰,避免了为最终用户烦恼的“你想重新发布表单数据”这个问题。