当用户选择有效选项时,需要清除 EnumDropDownListFor 的客户端验证
Need to clear client side validation of EnumDropDownListFor when user chooses valid option
如果用户在没有select在 ddl 中输入有效值的情况下单击页面上的提交按钮,它会验证错误;但是,当用户继续并 select 一个值时,错误不会像文本框那样清除。我有:
public enum PoolDeckMaterialsEnum
{
Pavers,
Concrete,
[Display(Name = "N/A")]
NotApplicable
}
和
[EnumDataType(typeof(PoolDeckMaterialsEnum))]
[Required]
public PoolDeckMaterialsEnum? PoolDeckMaterials { get; set; }
和
@Html.LabelFor(model => model.PoolDeckMaterials, new { @class = "control-label" })
@Html.EnumDropDownListFor(model => model.PoolDeckMaterials, "--- Select ---", new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.PoolDeckMaterials, "", new { @class = "text-danger" })
重现步骤:
打开页面
- 更改枚举值
- 错误信息永远消失
打开页面
- 点击提交
- 更改枚举
- 验证消息有效
编辑:
默认情况下应该有一些错误。关于验证注册。
我最终执行了以下操作以立即清除选择时的验证错误:
//04/10/20 kk Had to do the below to clear the val immediately on selection
$("#PoolDeckMaterials").change(function () {
$("#PoolDeckMaterials").blur();
});
如果用户在没有select在 ddl 中输入有效值的情况下单击页面上的提交按钮,它会验证错误;但是,当用户继续并 select 一个值时,错误不会像文本框那样清除。我有:
public enum PoolDeckMaterialsEnum
{
Pavers,
Concrete,
[Display(Name = "N/A")]
NotApplicable
}
和
[EnumDataType(typeof(PoolDeckMaterialsEnum))]
[Required]
public PoolDeckMaterialsEnum? PoolDeckMaterials { get; set; }
和
@Html.LabelFor(model => model.PoolDeckMaterials, new { @class = "control-label" })
@Html.EnumDropDownListFor(model => model.PoolDeckMaterials, "--- Select ---", new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.PoolDeckMaterials, "", new { @class = "text-danger" })
重现步骤:
打开页面
- 更改枚举值
- 错误信息永远消失
打开页面
- 点击提交
- 更改枚举
- 验证消息有效
编辑: 默认情况下应该有一些错误。关于验证注册。
我最终执行了以下操作以立即清除选择时的验证错误:
//04/10/20 kk Had to do the below to clear the val immediately on selection
$("#PoolDeckMaterials").change(function () {
$("#PoolDeckMaterials").blur();
});