我有一个表单,可以选择输入维度:
>宽度和宽度高度
>宽度
>身高
我有两个容器div,我隐藏/显示取决于选择的三个选项中的哪一个:
<div class="editor-field" id="width-container"> @Html.EditorFor(model => model.Width) @Html.ValidationMessageFor(model => model.Width) </div> <div class="editor-field" id="height-container"> @Html.EditorFor(model => model.Height) @Html.ValidationMessageFor(model => model.Height) </div>
如果选择了height,那么宽度不会显示在窗体上,如何在Width输入字段上禁用不显眼的验证,这样可以让我在用户改变主意时轻松地重新设置它,即删除数据 – *属性不是一个选项.我很高兴创建一个CustomAttribute类来处理这个但是我不想破解标准的jquery文件来使这个工作,因为它使新版本的更新令人头疼.如果所有其他方法都失败了,我会使用我常用的技巧,即在字段不可见时将值0添加到字段中,然后在显示时将其删除.
编辑:
解决方法
您可以设置处理不引人注目的验证的jQuery验证器,以忽略隐藏的元素:
jQuery.validator.defaults.ignore = ":hidden"; // the line above is outside any $(document).ready(...) or similar $(document).ready(function(){ ... }); ...