将项添加到Form.SerializeArray()

时间:2012-06-14 14:37:00

标签: jquery asp.net-mvc visual-studio

我使用jquery获取表单输入元素,以便进一步处理。

var ctrls = $('#frmUserMst').serializeArray();

偶尔我需要在这个ctrl数组中添加一些额外的信息。我怎么做

它不支持push()add()方法。

这是VS2008 MVC2项目中的一项要求。

更多信息: 由于未在serializeArray()输出中填充已禁用的控件,我需要手动添加它们。

感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

.serializeArray输出一组对象。每个对象都有两个键:namevaluename表示输入名称,value表示输入值。因此,您可以通过向数组添加另一个与其他对象匹配的对象,将另一个项添加到数组中。

var ctrls = $("#frmUserMst").serializeArray();
ctrls.push({
    "name": "myinputname",
    "value": "myinputvalue"
});

您不必存在为该数组添加值的输入。