您不能直接将数组从客户端发送到服务器,因为数组定义在两侧可能不相同。
有两种解决方法:
一个。您可以在clinet中将数组转换为json字符串,然后将其作为字符串参数发送到服务器,在服务器端,您可以解析并将其转换为数组
b。迭代数组,并使用一些特殊字符将其转换为字符串,并将其作为字符串参数传递给服务器,示例如下:
var dataStr = "";for (var i = 1; i <= optionsArr; i++) { //each array element split with 3 semicolons,and each property in element split with 2 semicolons dataStr += valueSelected + ";;" + i + ";;" + $("#"+i).text() + ";;" + $('#select_count'+i).val() + ";;;";}$.ajax({ url:"/api/v1/provider_spot", type:"POST", data:{dataStr:dataStr}, dataType:"json", success:function(response){ console.log(response); }});//now it is correct


