JavaScript - 将javascript对象作为隐藏输入字段发送

时间:2014-09-23 12:53:55

标签: javascript jquery html html5

我有一个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对象。

2 个答案:

答案 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函数对其进行解码。