为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C#
拉莫斯之舞 2022-11-13 14:45:46
我有一个包含数据并加载到我的视图中的视图模型。为了在 HTML 中显示数据,我使用了一些 @foreach 循环。现在页面包含来自视图模型的值。例如,如果视图模型包含 10 个项目,则所有 10 个项目都通过 html 中的 @foreach 循环加载。加载 evertyhing 后,我的 javascript 代码检查有多少项目,如果满足某些条件,则将项目拆分到 2 个不同的容器。要为草图添加更多颜色:这些项目是可交付成果。每个交付物都有一个需要交付的地址。这些地址将在地图上标记为交货点。地图是 1 个容器。因此,例如,如果我有 10 个项目,那么地图上就会有 10 个标记。javascript 计算这些标记之间的距离和旅行时间。如果总交付时间超过 8 小时(一个工作日),则它会从总项目池中提取一些项目,直到该特定容器中的总交付时间低于 8 小时。其余的可交付成果将放在另一个地图(容器)中。问题如何将这 2 个新制作的容器(包括物品)发布到我的控制器?所以我需要的是这样的:public ActionResult RetrieveContainerIncludingItems(List<ExampleModel> Containers)此列表应包含其项目。
查看完整描述

2 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

看法


<div id="divPartial2">

</div>

JS


        var ActionParams = new Object();

        ActionParams.ItemIds= ...;


        $.ajax({

            type: "POST",

            url: url,

            cache: false,

            data: JSON.stringify(ActionParams),

            contentType: "application/json",

            datatype: "html",

            success: function (data, textStatus, jqXHR) {

                $("#divPartial2").html(data);

            },

        });

控制器


    public ActionResult FilteredItems(List<int> itemIds)

    {

        //get only items for second container

        return PartialView("Container");

    }


查看完整回答
反对 回复 2022-11-13
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

$("div .map-inner").each(function(index, element) {

var AllOrderItems = new Array();


$($(this).find('.route-item')).each(function(index, element) {

    AllOrderItems.push($(this).find('.orderItemID').val());

})


var MapContainer = {

    DriverName: $(this).find('.driver-name').text(),

    TotalDistance: $(this).find('.total-km').text(),

    TotalTime: $(this).find('.total-time').text(),

    LicensePlate: $(this).find('.vehicle-number').text(),

    OrderItems: AllOrderItems

}

AllMaps.push(MapContainer);

})


查看完整回答
反对 回复 2022-11-13
  • 2 回答
  • 0 关注
  • 90 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信