需求:
JQuery 获取选中多选框的value,合并成数组传给后台
在ajax请求的时候,需要给后端传一个参数 deviceId,这个 deviceId是一个list集合,也就是一个数组,需要把选中的几个数值放在这个数组里面,当做参数传递。‘
简单的例子:
<!DOCTYPE HTML> <html xmlns:th="http://www.thymeleaf.org"> <head> <title>JQuery 获取选中多选框的value,合并成数组传给后台</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/css/bootstrap.min.css"> <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script> <script src="https://cdn.bootcss.com/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script> <style> </style> </head> <body> <div class="leftType"> <p> <input name="person" type="checkbox" value="1" checked='checked' />员工 </p> <p> <input name="person" type="checkbox" value="2" checked='checked' />访客 </p> <p> <input name="person" type="checkbox" value="3" checked='checked' />车辆 </p> <p> <input name="person" type="checkbox" value="4" checked='checked' />承包商 </p> </div> <button type="submit" id="submit">提交</button> </body> <script type="text/javascript"> $("#submit").click(function() { var arr = new Array(); $("input:checkbox[name='person']:checked").each(function() { arr.push($(this).val()); //向数组中添加元素 }); //获取界面复选框的所有值 arrType = arr.join(','); //把复选框的值以数组形式存放 alert(arrType); $.ajax({ url: "test.json", data: { //deviceId : [1,2,3,4] deviceId: arrType, }, type: "GET", success: function(data) {}, error: function(err) { console.log(err); } }) }) </script> </html>