回发到Controller后DropDownListFor值为空

时间:2015-07-27 15:30:14

标签: c# asp.net-mvc razor

我使用Razor Views在ASP.NET MVC 4下开发了一个Web应用程序。

我现在注意到,回传后(到控制器)ViewModel中SomethingID 为空如果我只添加 {{1 HTML属性为DropDownListFor:

disabled

如果删除// SomethingID becomes 0: @Html.DropDownListFor(m => m.SomethingID, Model.SomethingList, new { @disabled = "disabled" }) 属性,SomethingID具有正确的值,则不会发生:

disabled

是否有人遇到过这个问题? 目前,我尝试通过将值存储在HiddenFor字段中来解决jQuery的问题。

但我的问题是:有更好的解决方案吗?微软是否打算让Dropdownlists一旦被禁用就会忘记一切?我做错了吗?这是一个错误吗?

备注:我的视图中有5个下拉列表,所有5个都显示相同的行为。

非常感谢提前!!!

1 个答案:

答案 0 :(得分:4)

您看到这个的原因很简单,因为具有disabled属性的元素没有将其值发布到服务器。有关详细信息,请参阅此SO post