示例表单:
<form name="dataform" id="dataform" method="post" action=""> <p> <label for="hobby">爱好</label> <input type="checkbox" name="hobby" value="1"> 游泳 <input type="checkbox" name="hobby" value="2"> 篮球 <input type="checkbox" name="hobby" value="3"> 足球 </p> </form>
方法1:
//定义一个空数组 var checkID = []; $("input[name='check']:checked").each(function(i){ //把所有被选中的复选框的值存入数组 checkID[i] =$(this).val(); }); //用Ajax传递参数 $.post('Ajax.php',{checkID:checkID},function(json){ //... },'json')
方法2:
其实使用serializeArray()获取表单数据时是有记录的,只是一般整理成data数据时没有做对应的处理
console.log(‘value’, $(‘#dataform’).serializeArray())

var data = {};
var value = $('#dataform').serializeArray();
$.each(value, function (index, item) {
//如果是复选框,调整value为数组类型
if (item.name == 'hobby') {
!data[item.name] && (data[item.name] = [])
data[item.name].push(item.value);
} else {
data[item.name] = item.value;
}
});
//用Ajax传递参数
$.post('Ajax.php',data ,function(json){
//...
},'json')