var ticketId = new Array(); for(var i = 0; i < checkboxes.length; i++) { ticketId.push(checkboxes[i].value); } $.ajax({ type:"POST", url:myURL, data: { "ticketId":ticketId }, dataType: "json", success:function(data){} });
在运行过程中,通过调试发现传递到服务器的参数不是ticketId,而全部变成了ticketId[],都多了个[],这让我感觉到很困扰,最终终于找到解决方法,就是为ajax添加一个参数traditional: true,即将代码改成
$.ajax({ traditional: true, type:"POST", url:myURL, data: { "ticketId":ticketId }, dataType: "json", success:function(data){} });
这样传递的参数就是ticketId,是正确的,后台可以正常处理该参数传递的值了
traditional:将数据转化成序列化的字符串