如何将对象列表传递给控制器?
Posted
技术标签:
【中文标题】如何将对象列表传递给控制器?【英文标题】:How to pass objects list to Controller? 【发布时间】:2019-11-15 19:23:14 【问题描述】:当我想添加购买项目名称、数量和 价格并添加多次相应的总金额将计算 最后点击提交按钮提交所有这些包含的项目 与其他参数,如账单号,账单日期等。
控制器
[HttpPost]
public ActionResult ProjectPurchasesMutiple(ProjectPurchases ym)
return View();
提前致谢
【问题讨论】:
【参考方案1】:-
使用空数组加载表单时创建会话变量
点击添加库存时,将值添加到此会话变量中
要在表单中显示的会话变量中的列表项
当触发提交时,从此会话变量中添加项目
【讨论】:
【参考方案2】:你需要定义两种不同的形式
收据详细信息表单:具有收据详细信息,即购买的项目 名称、数量和价格
账单明细表,即账单编号、日期等
定义两个全局变量
TotalResults:计算总结果
用于处理收据详细信息列表的对象数组。 (var receiptsList = [])
每次触发“添加库存”事件时,序列化并将生成的收据详细信息对象添加到对象数组 (你可以使用 .push() jQuery 方法https://www.w3schools.com/jsref/jsref_push.asp)以及总结总金额。 (您可以通过调用 .serialize() jQuery 方法细节来做到这一点:https://api.jquery.com/serialize/)
在提交序列化帐单详细信息表单并将先前定义的收据列表数组和变量添加到这个新的序列化对象并将其发送到控制器。
var billingDetails = $("billingDetailsForm_Id").serialize()
billingDetails["recieptsListName"] = recieptsList
【讨论】:
感谢您回复任何更了解我的编码演示 分享您的代码,以便我指导您进行适当的更改。以上是关于如何将对象列表传递给控制器?的主要内容,如果未能解决你的问题,请参考以下文章
如何将视图中的 javascript 代码中的对象列表传递给控制器中的操作方法