更改视图中的值后,如何将列表中的值传递给 C# 中的控制器?

我有一个包含数据并加载到我的视图中的视图模型。为了在 HTML 中显示数据,我使用了一些 @foreach 循环。

现在页面包含来自视图模型的值。例如,如果视图模型包含 10 个项目,则所有 10 个项目都通过 html 中的 @foreach 循环加载。

加载 evertyhing 后,我的 javascript 代码检查有多少项目,如果满足某些条件,则将项目拆分到 2 个不同的容器。

要为草图添加更多颜色:

这些项目是可交付成果。每个交付物都有一个需要交付的地址。这些地址将在地图上标记为交货点。地图是 1 个容器。因此,例如,如果我有 10 个项目,那么地图上就会有 10 个标记。javascript 计算这些标记之间的距离和旅行时间。如果总交付时间超过 8 小时(一个工作日),则它会从总项目池中提取一些项目,直到该特定容器中的总交付时间低于 8 小时。其余的可交付成果将放在另一个地图(容器)中。

问题

如何将这 2 个新制作的容器(包括物品)发布到我的控制器?

所以我需要的是这样的:

public ActionResult RetrieveContainerIncludingItems(List<ExampleModel> Containers)

此列表应包含其项目。


拉莫斯之舞
浏览 99回答 2
2回答

饮歌长啸

看法<div id="divPartial2"></div>JS&nbsp; &nbsp; &nbsp; &nbsp; var ActionParams = new Object();&nbsp; &nbsp; &nbsp; &nbsp; ActionParams.ItemIds= ...;&nbsp; &nbsp; &nbsp; &nbsp; $.ajax({&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; type: "POST",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; url: url,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cache: false,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; data: JSON.stringify(ActionParams),&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; contentType: "application/json",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; datatype: "html",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; success: function (data, textStatus, jqXHR) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $("#divPartial2").html(data);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; },&nbsp; &nbsp; &nbsp; &nbsp; });控制器&nbsp; &nbsp; public ActionResult FilteredItems(List<int> itemIds)&nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; //get only items for second container&nbsp; &nbsp; &nbsp; &nbsp; return PartialView("Container");&nbsp; &nbsp; }

慕莱坞森

$("div .map-inner").each(function(index, element) {var AllOrderItems = new Array();$($(this).find('.route-item')).each(function(index, element) {&nbsp; &nbsp; AllOrderItems.push($(this).find('.orderItemID').val());})var MapContainer = {&nbsp; &nbsp; DriverName: $(this).find('.driver-name').text(),&nbsp; &nbsp; TotalDistance: $(this).find('.total-km').text(),&nbsp; &nbsp; TotalTime: $(this).find('.total-time').text(),&nbsp; &nbsp; LicensePlate: $(this).find('.vehicle-number').text(),&nbsp; &nbsp; OrderItems: AllOrderItems}AllMaps.push(MapContainer);})
打开App,查看更多内容
随时随地看视频慕课网APP