[英]Cannot send array to php via AJAX?
好吧,我遵循了这个问题,但是无法将数组发送到php,因此我总是空着:
JS:
values = [];
values['mpsRegnomer'] = $('#mpsRegnomer').val();
values['mpsMarka'] = $('#mpsMarka').val();
values['mpsMarkaOther'] = $('#mpsMarkaOther').val();
values['engineType'] = $('#engineType').val();
values['seatNumberInput'] = $('#seatNumberInput').val();
values['carColor'] = $('#carColor').val();
values['mpsChassiNum'] = $('#mpsChassiNum').val();
values['mpsModel'] = $('#mpsModel').val();
values['mpsModelOther'] = $('#mpsModelOther').val();
values['mpsManufactureDate'] = $('#mpsManufactureDate').val();
values['mpsfor'] = $('#mpsfor').val();
values['VehicleType'] = $('#VehicleType').val();
values['dvigatelInput'] = $('#dvigatelInput').val();
values['engineMaxPower'] = $('#engineMaxPower').val();
values['is_automatic'] = $('#is_automatic').val();
console.log(values);
$.ajax({
type: 'POST',
url: 'assets/clients/services/saveDataMPS.php',
async: false,
dataType: "JSON",
data: {"values": JSON.stringify(values)},
success:function(response){
alert(1);
}
});
console.log(values)
告诉我该数组是可以的。
PHP代码:
<?php
var_dump(json_decode($_POST["values"])); exit;
它使我总是空着,也只用var_dump($_POST);
尝试过var_dump($_POST);
同样的结果..我在哪里错了?
console.log(values)
结果:
您将values
定义为数组,因此在对它进行字符串化时会得到一个空数组。 将其定义为类似于values = {};
的对象values = {};
它会工作。
您不在javascript中使用关联数组,因为
如果使用命名索引,JavaScript会将数组重新定义为标准对象。 之后,某些数组方法和属性将产生错误的结果。
这就是为什么您需要在开始时将其定义为对象。
values = {};
values['mpsRegnomer'] = $('#mpsRegnomer').val();
values['mpsMarka'] = $('#mpsMarka').val();
values['mpsMarkaOther'] = $('#mpsMarkaOther').val();
这是一个工作中的JSFiddle。 http://jsfiddle.net/pk97fe0b/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.