将超链接的请求方式从get请求改变为post请求

 在SpringMVC中存在四种RequestMaping请求方式:get、post、put、delete四种,但是浏览器本身是只能接受get和post两种方式的请求,如果是根据超链接的方式来请求,由于超链接默认只有get的请求方式,但是如果超链接的请求方式可以从get方式改为post方式就很好了,有了post,就有了put和delete请求方式,下面记录一下超链接是如何完成这种请求方式的转变的:

<!--第一步:借助于JQuery将超链接请求的方式从get改为post方式,引入jquery-->
<script type="text/javascript" src="scripts/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
    $(function () {
        //为所有的class为delete的按钮点击动作添加行为函数
        $(".delete").click(function () {
            //获取class为delete的超链接的地址
            var href = $(this).attr("href");
            //为隐藏域的action赋值并提交
            $("form").attr("action", href).submit();
            return false;
        })
    })
</script>

<!--第二步:创建含有隐藏域的表单请求-->
<form action="" method="POST">
    <!--这里的name必须是_method,value的值就是要转成的新的请求方式,如果
    没有SpringMVC的delete方式,可以忽略这一行,直接写一个空表单即可-->
    <input type="hidden" name="_method" value="DELETE">
</form>

<!--第三步:为超链接添加class属性,根据class改变其请求方式-->
<td><a class="delete" href="emp/${employees.id}">Delete</a>

通过上面的配置后,前端页面上超链接的请求方式就从get方式变成了post的请求方式,当然上面我在表单中又添加了隐藏域(这里是需要Servlet去改变post的请求方式为delete方式,如果你没有这个需求,完全可以忽略这个隐藏域),好了,此时超链接的请求方式就从get变为post了

猜你喜欢

转载自blog.csdn.net/jacksonary/article/details/79550157