SpringMVC 接收多个checkbox提交参数的问题

本文探讨了SpringMVC在接收多个checkbox提交的表单参数时遇到的问题。当checkbox值为单个时,参数名为position;多个时,需要以数组形式(position[])接收。在未选中checkbox时,通过将@RequestParam的required属性设为false解决400错误。示例代码展示了前端JQuery如何传递数组参数以及服务端Controller如何正确接收这些参数。
摘要由CSDN通过智能技术生成

springMVC在接收多个checkbox提交表单参数的时候的问题!!!!!!

当前端表单序列化为json对象提交checkbox数据的时候有个这样的问题,


如图我有3个checkbox的数据,checkbox的name为position,当值勾选一个的时候springMVC接收参数的时候的name为position,当提交一个以上的时候接收前端的参数需要时数组,这时候需要在springMVC的方法上使用如下代码

@RequestMapping("/add.html")
    @ResponseBody
    public ResultModel add(HttpServletRequest request, @RequestParam(value = "position[]", required = false) String[] positions) {
        Map map = getParamMap(request);
        map.put("positions", positions);
        return boardService.addBoardCategory(map);
    }
这时候就有一个问题checkbox勾选一个的时候接收name是position,一个以上的时候是position[],这样后端岂不是要多做一个次判断,这样很是麻烦,所以很想解决这个问题,这时候就需要把前端的checkbox的name进行一些改动,改动如下

<span class="pc">
      <input type="checkbox" name="position[]" value="1"/>流行经典
      <input type="checkbox" name="position[]" value="2"/>有好货趣创意
      <input type="checkbox" name="position[]" valu
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值