我正在使用包含列表作为属性的模型。我用从 SQL Server 获取的项目填充此列表。我希望列表隐藏在视图中并传递给 POST 操作。稍后我可能想使用 jQuery 将更多项目添加到此列表中,这使得数组不适合稍后扩展。通常你会使用
@Html.HiddenFor(model => model.MyList)
完成此功能,但由于某种原因,POST 中的列表始终为空。
很简单的问题,有人知道为什么 MVC 会这样吗?
我刚刚遇到这个问题并通过执行以下操作简单地解决了它:
@for(int i = 0; i < Model.ToGroups.Count; i++)
{
@Html.HiddenFor(model => Model.ToGroups[i])
}
通过使用for
代替foreach
模型绑定将正常工作并拾取列表中的所有隐藏值。似乎是解决这个问题的最简单的方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)