Freemarker操作:当表单动作指向方法时,如何导航回主页

10 浏览
0 Comments

Freemarker操作:当表单动作指向方法时,如何导航回主页

我用dropwizard写了一个应用程序,可以查看和编辑数据库中的信息。为了从我的资源类中调用这些方法,我使用@Path(\"/path/to/method\")对它们进行了注解。然后,我在Freemarker模板中设置了这些路径的表单操作,以便可以使用这些方法。这就是我的意思:\n资源方法:\n

@Path("/home")
public class MyResource
    @POST
    @Path("/update/{id}")
    @Consumes(MediaType.APPLICATION_FORM_URLENCODED)
    @Produces(MediaType.APPLICATION_JSON)
    public void updateProfile(@PathParam("id") int id, @FormParam("name") String name) {
            Profile profile = new Profile(id, name);
            manager.newProfile(id, profile);
    }

\n以及freemarker表单:\n

\n这个方法很好用,但我想在单击提交按钮后能够返回到/home。我尝试在按钮上使用location.href,将其指向主页:\n


\n如这里所提到的,但它只是打开了一个新的标签页进行更新(当然是空白的)。

0
0 Comments

Freemarker操作:如何在表单操作指向方法的同时导航回主页

问题的原因:

在使用Freemarker模板引擎开发Web应用时,有时需要在表单中执行操作后返回到主页。然而,如果表单的action属性指向了一个方法,那么默认情况下表单提交后会跳转到该方法对应的页面,而不是返回到主页。

解决方法:

要解决这个问题,可以在表单中添加一个target属性,并将其值设为"_self",这样就可以在表单操作后返回到主页。

具体的解决方法如下所示:

在上述示例中,假设我们有一个名为"/home"的控制器方法,我们想要在表单提交后返回到主页。我们可以使用上述代码将表单的action属性设置为"/home",并将target属性设置为"_self"。这样,当表单提交后,页面将在当前标签页中重新加载主页。

通过以上的解决方法,我们可以实现在表单操作指向方法的同时成功返回到主页。

0