复选框不绑定在ASP.NET MVC CORE中的模型绑定中

时间:2017-07-18 23:43:00

标签: c# asp.net-core-mvc

复选框未在模型绑定中绑定,

隐藏输入正确绑定但只有复选框不起作用

这是我的班级:

public class SelectedIDsViewModel
{
    public bool IsChecked { get; set; }

    public int ID { get; set; }

}

那就是复选框:

<form asp-action="DeleteAll" asp-controller="Admin" method="post">

@for (int i = 0; i < Model.ArticleDetails.Count(); i++)
{

      <input name="@("ddd["+ i + "].IsChecked")" type="checkbox" />
      <input name="@("ddd["+ i + "].ID")" 
        value="@Model.ArticleDetails[i].ArticleID" type="hidden" />
}

</form> 

这是我的方法动作:

[HttpPost]
public IActionResult DeleteAll(List<SelectedIDsViewModel> ddd)
{

     return View();
}

1 个答案:

答案 0 :(得分:0)

你也可以像这样使用标签助手

<form asp-action="DeleteAll" asp-controller="Admin" method="post">

    @for (int i = 0; i < Model.ArticleDetails.Count(); i++)
    {

        <input asp-for="ArticleDetails[i].ID" name="@("ddd["+ i + "].ID")" type="hidden" />

        <input asp-for="ArticleDetails[i].IsChecked" name="@("ddd["+ i + "].IsChecked")" />
    }

    <input type="submit" />
</form>