关于bootstrap.table无法使用queryParams获取前台参数问题解决

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_34291570/article/details/92850123

jquery使用queryParams拿参数:

由于bootstrap传递的数据有两种类型,一种是<input>类型,一种是<select>类型,他们都是以$("#id").val()上传数据,但是在后端却不同,对于input的数据,后端request.getParameter();获得数据正常,但是对于select还是以request.getParameter();获取数据,就会导致获取的是null,我追查了好久,发现原因竟然是前端传过来的name竟然是带方括号的[],比如前端传入数据:

<select id="hobby">
    <option value="1">打球</option>
    <option value="2">蹦迪</option>
    <option value="3">跳楼</option>
</select>
function ways(){
            $('#query_results').bootstrapTable({
                url: '...',  //请求后台的URL
                ...
                queryParams: queryParams,
                ...
            });
}
function queryParams(params)
{
    var paramss = {
        name: $("#name"),
        hobby: $("hobby")
    }
    return paramss;
}

在后端参数名以这样获取才可以取到

String name = request.getParameter("name");
String hobby  request.getParameterValues("hobby[]");

注意到了吗?要以hobby[]作为入参名字才可以取到值!

猜你喜欢

转载自blog.csdn.net/qq_34291570/article/details/92850123