如何解決bootStrapValidator bootStrap-select驗(yàn)證不可用,只要三步:
思路:把多選下拉框的選中值,賦給一個(gè)隱藏的input組件,再對(duì)input組件進(jìn)行驗(yàn)證(bootstrap-validator默認(rèn)情況下hidden,disabled的組件不驗(yàn)證,可以通過(guò)excluded屬性更改),具體步驟如下:
1.表單驗(yàn)證初始化(js)
$('#myModalForm').bootstrapValidator({ message: 'This value is not valid', excluded : [':disabled'],//[':disabled', ':hidden', ':not(:visible)'] //設(shè)置隱藏組件可驗(yàn)證 feedbackIcons: { valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh' }, fields: {roleid: { message: '角色無(wú)效', validators: { notEmpty: { message: '角色不可為空' } } }}})2.bootStrap-select組件配置(jsp頁(yè)面)
<input type="hidden" class="form-control" id="roleid" name="roleid"><select class="selectpicker form-control" multiple data-width="60%" id="roleidForSelect" title="---請(qǐng)選擇---"></select>
3.在多選下拉框選擇完畢后,為對(duì)應(yīng)的input賦值
$('#roleidForSelect').on('hidden.bs.select', function (e) { //該方法注冊(cè)到$(function(){})函數(shù)中 var tmpSelected = $('#roleidForSelect').val(); if(tmpSelected != null){ $('#roleid').val(tmpSelected); }else { $('#roleid').val(""); } //由于input為hidden,驗(yàn)證會(huì)出現(xiàn)一些bug,此處手動(dòng)驗(yàn)證隱藏的input組件 $('#myModalForm').data('bootstrapValidator').updateStatus('roleid', 'NOT_VALIDATED').validateField('roleid'); });如果大家還想深入學(xué)習(xí),可以點(diǎn)擊這里進(jìn)行學(xué)習(xí),再為大家附3個(gè)精彩的專題:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注