通过POST将Javascript对象数组传递给MVC控制器

时间:2018-04-26 14:16:02

标签: javascript json ajax asp.net-mvc model-view-controller

所以我有一个javascript对象数组,它是在多个表行中使用JQuery构造的。它具有以下形式:

obj_rows = [
    {"param1":value11, "param2":value12, "param3":value3},
    {"param1":value21, "param2":value22, "param3":value23},
    //more objects with the same parameters
]

我想要的是对Controller方法的一个AJAX POST请求的方式SomeController / SomeAction接受这个数组并且可以迭代所有对象。我试图找到一种方法来使用JSON,但没有成功。

注意:即使我使用MVC,我也没有与这些对象相对应的模型类。理想情况下,我想最终得到一些像3元组列表的结构。

2 个答案:

答案 0 :(得分:0)

实际上,解决方案是获取对象并将其字符串化为字符串,然后通过ajax请求发送它。

这样做: JSON.stringify(obj_rows) 并且你将在另一个端点上获得一个数组(当然是字符串化的),你必须将它解析回来,你将得到你的数组。

答案 1 :(得分:0)

您可以使用javascript方法JSON.stringify()将对象转换为字符串并将其结果分配给视图中的隐藏字段,一旦在控制器中收到此字符,就可以将其反序列化为对象或解析它自己。