在ASP.NET MVC 4应用程序中,我有一个DropDownListFor来显示收藏夹列表。提交表单无需此字段。 DropDownListFor从主数据表中获取数据。 问题是,当我提交并且我没有从列表中选择一个喜欢的时候,我无法禁用这个值。 这是kendo DropDownListFor代码:
@{
IList<Repsol.Portal.PortalClienteDEAC.GLP.Domain.Entities.PedidoFavorito> cmbFavorito = listaPedidoFavorito.ToList();
}
@(Html.Kendo().DropDownListFor(model => model.pedidoFavorito.IdFavorito)
.BindTo(new SelectList(cmbFavorito.Select(s => new { Key = s.IdFavorito, Value = s.DescFavorito }), "Key", "Value"))
.Name("IdFavorito")
.OptionLabel(Idioma.Shared.Pedidos_SeleccioneOpcion)
)
这是PedidoFavorito.cs类的内容:
public partial class PedidoFavorito
{
#region Primitive Properties
public virtual int IdFavorito
{
get;
set;
}
public virtual string IdContrato
{
get;
set;
}
public virtual string IdPedido
{
get;
set;
}
public virtual string DescFavorito
{
get;
set;
}
public virtual string metadata
{
get;
set;
}
#endregion
}
我尝试了很多东西,但没有得到积极的结果。
提前致谢!!
答案 0 :(得分:1)
数据注释将呈现data-val-required,因为DescFavorito
属性不可为空。
查看 this link
答案 1 :(得分:0)
我找到了解决方案。 我要做两件事。 在视图中,我必须添加此脚本:
$(document).ready(function () {
document.getElementById("IdFavorito").removeAttribute("required");;
});
我还必须在PedidoFavorito.cs中使IdFavorito可以为空:
public virtual int? IdFavorito
{
get;
set;
}