我有一个JS数组对象如下:
var tables = new Array();
var table = new Object();
table.no=1001;
table.name="Table-1";
tables.push(table);
table.no=1001;
table.name="Table-1";
tables.push(table);
现在我需要通过表单中的隐藏字段发送此tables
对象数组。我可以直接将隐藏字段的值指定为tables
对象。
答案 0 :(得分:3)
使用JSON.stringify()将其转换为JSON字符串并发送您的数据。
创建追加对象的方式存在问题。每次编辑同一个对象时。它将导致数组中的所有元素都是您创建的最后一个对象,因为它们都是您对同一对象的引用。将项目附加到数组时通过创建新对象来解决此问题
var tables = new Array();
tables.push({"no":1000,"name":"Table-0"});
tables.push({"no":1001,"name":"Table-1"});
alert(JSON.stringify(tables));

答案 1 :(得分:0)
您可以对值进行字符串化,将其放入字段中,将其发送到服务器然后对其进行解码。字符串化对象:
JSON.stringify(tables);
假设您在服务器上使用PHP,可以使用json_decode
函数对其进行解码。