没有刷新页面的Spring MVC帖子

时间:2017-02-25 08:13:09

标签: jquery spring-mvc post spring-boot thymeleaf

我有一个菜单页面。菜单上的每个按钮都是带有特定URL的空白表单。

<form method="post" class="menu-form vote" action="/waiter/order/2/menu?product=Crown%20Royale">
                                <button type="submit" class="btn btn-success btn-lg">Crown Royale</button>
                            </form>
                            <form method="post" class="menu-form vote" action="/waiter/order/2/menu?product=Glenkinchie">
                                <button type="submit" class="btn btn-success btn-lg">Glenkinchie</button>
                            </form>

有效。按下请求进入控制器并存储在数据库中。

 @RequestMapping(value = "waiter/order/{id}/menu", method = RequestMethod.POST)
public void addoToOrder(@PathVariable("id") long id,
                                     @RequestParam("product") String product) {
    orderDetailService.addOrderDetail(id, product);
}

我需要在每次按下后重新加载该页面。 我尝试了与

相似的东西
<script type="text/javascript">
$(function() {

    $('.vote').on('submit', function() {
        return false;
    });

});

但它没有用。请求到了,但页面变白了。

1 个答案:

答案 0 :(得分:0)

您可以发送ajax请求,以便不刷新页面。您已经包含了jQuery,因此您可以使用$.post$.ajax方法。

删除表单并将onclick添加到按钮,如下所示:

<button class="btn btn-success btn-lg" onclick="$.post('/waiter/order/2/menu?product=Crown%20Royale')">Crown Royale</button>
<button class="btn btn-success btn-lg" onclick="$.post('/waiter/order/2/menu?product=Glenkinchie')">Glenkinchie</button>