我有一个隐藏的字段,出生日期,并使用以下jQuery插件创建3个下拉列表。
https://github.com/IckleChris/jquery-date-dropdowns
这提供以下来源。
<label class="control-label" for="Applicant_DateOfBirth">Date of Birth</label>
<span class="field-validation-valid" data-valmsg-for="Applicant.DateOfBirth" data-valmsg-replace="true"></span>
<div class="date-dropdowns">
<select class="day selectdob valid ignore" name="date_[day]" data-val="false" aria-invalid="false">
<option value="">Day</option>
<option value="01">01</option>
<option value="02">02</option>
....
</select>
** pseudo code to show additional select fields within div **
<select for month>
<select for year>
<input class="invisible valid" data-val="true" data-val-required="Please enter your date of birth" id="Applicant_DateOfBirth" name="Applicant.DateOfBirth" type="text" value="" aria-required="true" aria-describedby="Applicant_DateOfBirth-error" aria-invalid="false">
</div>
我尝试将验证onclick,onkeyup和onfocusout all设置为false,并将data-val设置为false,如下所示:
Preventing jquery validation on drop down bound to int?
不幸的是,在选择字段发生任何变化时仍会触发验证。
当有效选择所有3个选择字段时,jQuery插件仅更新隐藏字段,因此我确信这不是问题。
任何人都可以建议如何在选择字段上禁用验证,但在输入字段上保留验证
请注意,出于调试目的,不会隐藏输入字段。
我正在使用jQuery validate + unobtrusive与MVC .Net 4.6
我确实尝试了忽略,但这又没有阻止选择字段的验证。
当前验证电话:
$(form).validate({
onclick: false,
onkeyup: false,
onfocusout: false,
ignore: ".ignore"
});
要在第一次选择字段更改时显示验证触发器的图像,结束字段是将隐藏的Applicant.DateOfBirth输入。
答案 0 :(得分:0)
以下是阻止验证所选fields
,select
等
只需添加字段名称并将其标记为required:false,
rules: {
NameOfField: {
required:false, // false will not give permission to this for validation
},
},
&#13;