我有一堆对象,我想用Ajax发布。我将$.param
用于序列化数组及其对象,然后将它们发布到Ajax。当我调试JS时,似乎序列化工作正常,myArray
并且其内容看起来并不奇怪。但是当我在php中请求发布的值时,我只会得到一串逗号,类似于",,,,,,,,,,,,,,,,,"
。
我应该如何序列化和反序列化这些对象和数组?
var array= [];
$('.myselector').each(function() {
var object = [];
object ['x'] = a;
object ['y'] = b;
object ['z'] = c;
$.param(object);
array.push(object);
});
$.param(array);
// ...post object with ajax
答案 0 :(得分:0)
你应该创建一个不是数组的对象,JSON.stringfy不能用"非数字"来转换数组。键。我将你的代码修改为...
$('.myselector').each(function() {
var object = {};
object ['x'] = a;
object ['y'] = b;
object ['z'] = c;
var json = JSON.stringify(object);
});
// post json to your server