如何将复选框分配的值发送到控制器?

时间:2019-04-21 19:59:49

标签: c# model-view-controller

我想在Some表中插入Some Users,所以我将它们显示在视图中并为每个用户设置一个复选框,现在我想将UserId发送给Controller。

我进行了很多搜索,发现每个人都在使用我不想使用的复选框,因为它与模型无关。 还有一些答案,其中为我要使用的用户ID分配了无法使用的复选框的整数值

这是我用于在View中显示用户的代码

 for(int item = 0; item < Model.Count(); item++)
    {
        @Html.DisplayFor(m => m[item].ApplicationUser.Email);
        @Html.DisplayFor(m => m[item].ApplicationUser.Name);
        @Html.DisplayFor(m => m[item].ApplicationUser.FName);
        @Html.DisplayFor(m => m[item].ApplicationUser.Mobile);
        @Html.HiddenFor(m => m[item].UserId);
       @Html.CheckBox("selectuser", new { id = "suid", UserId = Model[item].UserId });
    }

这是我用于将CheckBox发送到控制器的代码

   $(document).ready(function () {
            $('#Saving').on('click', function (e) {
                e.preventDefault();

                var favorite = [];
                var UserIDs = [];
                $.each($("input[name='selectuser']:checked"), function () {
                    favorite.push($(this).val());

                });

                $.ajax({
                    type: "POST",
                    dataType: "json",
                    contentType: "application/json",
                    url: '@(Url.Action("SaveWorkForUser", "ToDoList"))',
                    data: JSON.stringify({ values: favorite }),
                    success: function (result) {
                        $('#message-container').html(result);
                    }
                });

现在我可以在Controller中看到所选用户的数量,但是我希望他们的UserId

1 个答案:

答案 0 :(得分:0)

def ten = "ten"

def map = [:].tap{
    a = "apple"
    b = "${ten} ${a}s"
}

assert map == [a:"apple", b:"ten apples"]