【发布时间】:2014-10-14 17:02:59
【问题描述】:
我问了一个问题,将客户端上的模型数据填入数组中。
现在我的问题是如何将它发布到控制器。我试过这个:
public ActionResult ItemRequest (Model1 model)
{
////
}
但它永远不会到达那里。
我正在尝试使用 AJAX 请求发送它:
function sendRequest() {
jsonData.items = itemArray;
$.ajax({
url: '@Url.Action("ItemRequest")',
type: 'POST',
data: JSON.stringify(jsonData),
///// and so on
}
但永远不会调用操作结果。我可以删除“JSON.stringify”,这没什么区别。关于如何将此对象发布到控制器的任何想法?
如果我在 JS 中制作一个伪模型,它可以正常工作,但我不想制作这个模型,我宁愿使用传递给页面的模型。
function itemModel () {
var self = this;
this.itemNumber = $("#itemNumberId").val();
/// etc.
self.items = [];
}
function itemsModel () {
var self = this;
this.itemNumber = $("#itemNumberId").val();
/// etc
}
然后
var itemCount = 0;
function addItem() {
var newItem = new itemModel();
newItem.items[itemCount] = newItem;
/// etc
}
这很好用。
我以同样的方式将数组 itemModel 与 JSON.stringify 直接发送到控制器方法中
public ActionResult ItemRequest(ItemModel model)
【问题讨论】:
-
对于初学者,您尝试将 Array 对象传递到服务器上的单个对象中。此外,您将
itemArray分配给jsonData.items,但正在字符串化并传递jsonData -
@CSharper - 好的,我明白了,那么我应该通过什么以及如何通过?
标签: javascript jquery json asp.net-mvc-4