【发布时间】:2014-01-09 11:29:50
【问题描述】:
我使用bootstrap select plugin 设计我的HTML 选择框。现在,我为validate 我的表单添加了jQueryvalidation 插件但是,验证表单不适用于引导选择插件。
演示HERE
HTML:
<form id="myform">
<select name="year" class="selectpicker">
<option value="">Year</option>
<option value="1">1955</option>
<option value="2">1956</option>
</select>
<br/>
<input type="submit" />
</form>
JS:
$(document).ready(function () {
$('select').selectpicker();
$('#myform').validate({ // initialize the plugin
rules: {
year: {
required: true,
}
},
submitHandler: function (form) { // for demo
alert('valid form submitted'); // for demo
return false; // for demo
}
});
});
注意: For check this conflict, remove Line 2 from JS, jQuery Validation Worked.
编辑: adeneo 使用ignore[] 方法修复问题:FIDDLE
$('#myform').validate({ // initialize the plugin
ignore: [],
rules: {
year: {
required: true
}
},
errorPlacement: function(error, element) {
if (element.attr("name") == "year") {
error.insertAfter(".bootstrap-select");
} else {
error.insertAfter(element);
}
},
submitHandler: function (form) { // for demo
alert('valid form submitted'); // for demo
return false; // for demo
}
});
现在这有效,但我有新问题:在选择字段后的正常验证中,错误消息 This field is required 自动隐藏(或添加任何 css,显示成功消息)但现在,在修复必填字段后显示错误消息。实际操作:当我们选择年份时,错误信息不会隐藏。
如何解决这个问题?
【问题讨论】:
标签: javascript jquery twitter-bootstrap