@ Html.HiddenFor不适用于ASP.NET MVC中的列表
我正在使用一个包含List作为属性的模型。我正在用我从SQL
Server获取的项目填充此列表。我希望将列表隐藏在视图中并传递给POST操作。稍后,我可能想使用jQuery向此列表添加更多项,这使得数组不适合稍后扩展。通常你会用
@Html.HiddenFor(model => model.MyList)
以完成此功能,但由于某种原因,POST中的List始终为空。
很简单的问题,有人知道为什么MVC会这样吗?
回答:
我刚刚遇到了这个问题,只需执行以下操作即可解决该问题:
@for(int i = 0; i < Model.ToGroups.Length; i++){
@Html.HiddenFor(model => Model.ToGroups[i])
}
通过使用for而不是foreach,模型绑定将正常工作,并选择列表中的所有隐藏值。似乎是解决此问题的最简单方法。
以上是 @ Html.HiddenFor不适用于ASP.NET MVC中的列表 的全部内容, 来源链接: utcz.com/qa/406763.html