bootstrapValidator多字段聯合驗證(如開始日期和結束日期中,開始日期不可晚於結束日期)


接觸bootstrapvalidator時間不久,最近需要多個字段共同驗證,網上查了一下未找到,查閱api文檔,發現確實可以實現。

先看dom

<div class="form-group"> <label class="col-sm-3 control-label">起止年限:</label> <div class="col-sm-9 row"> <div class="col-xs-5"> <div class="input-group"> <input type="text" name="beginYear" class="form-control "/> <span class="input-group-addon">年</span> </div> </div> <div class="col-xs-1" style="line-height:36px;"> 至</div> <div class="col-xs-5"> <div class="input-group"> <input type="text" name="endYear" class="form-control"/> <span class="input-group-addon">年</span> </div> </div> </div> </div

在這個表單中,我們往往需要開始年份不能晚於結束年份,及beginYear<=endYear,此時,驗證我們可以這樣寫

 fields: { beginYear: { validators: { integer: {}, callback: { message: '開始日期不能大於結束日期', callback:function(value, validator,$field,options){ var begin = $('#pro_info').find("input[name='endYear']").val(); return parseInt(value)<=parseInt(begin); } } } }, endYear: { validators: { integer: {}, callback: { message: '結束日期不能小於開始日期', callback:function(value, validator,$field){ var begin = $('#pro_info').find("input[name='beginYear']").val(); $('#pro_info').find("input[name='beginYear']").keypress(); validator.updateStatus('beginYear', 'VALID'); return parseInt(value)>=parseInt(begin); } } } } } });

主要是利用callback函數,傳入參數validator驗證器,利用驗證器更新指定字段的狀態。這樣就可以實現多字段聯合驗證,當然,三個字段、四個字段也是如此。

轉載請注明出處,博客園:http://www.cnblogs.com/dreamowneryong/p/5000206.html;如有疑問,歡迎前往原創評論,共同探討。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM