【发布时间】:2010-01-18 21:48:19
【问题描述】:
如何更改此 DropDownList 声明,以便有条件地启用/禁用 disabled 属性?
<%= Html.DropDownList("Quantity", new SelectList(...), new{@disabled="disabled"} %>
非工作示例:
<%= Html.DropDownList("Quantity", new SelectList(...), new{@disabled=Model.CanEdit?"false":"disabled"} %>
附言在整个语句周围添加 if 条件不是理想的方法:)
编辑:基于另一个问题的this 扩展方法,我想出了以下扩展:
public static IDictionary<string, object> Disabled (this object obj, bool disabled)
{
return disabled ? obj.AddProperty ("disabled", "disabled") : obj.ToDictionary ();
}
然后可以用作
<%= Html.DropDownList("Quantity", new SelectList(...), new{id="quantity"}.Disabled(Model.CanEdit) %>
【问题讨论】:
-
嗨,我想仅根据值禁用/启用特定页面的下拉列表,我将其传递给模型。我尝试将 true / false 传递给残疾人,但它不起作用。你能帮忙吗
标签: asp.net-mvc