jbvalidator是一个全新的基于jQuery的表单验证插件,它是为最新的Bootstrap 5框架创建的,同时支持客户端和服务器端验证。
1.在文档中加载最新的jQuery JavaScript库和Bootstrap 5框架。
<link rel="stylesheet" href="/path/to/cdn/bootstrap.min.css" /> <script src="/path/to/cdn/jquery.min.js"></script> <script src="/path/to/cdn/bootstrap.min.js"></script>
2.添加新伐地酸盐
属性类型
元素,并使用以下HTML将验证器应用于表单字段数据
属性:
<form class="example" novalidate> <div class="form-group"> <label>Email</label> <input type="email" class="form-control" placeholder="[email protected]" required> </div> <div class="form-group"> <label for="password">Password</label> <input type="password" name="password" class="form-control" id="password" title="password" required> </div> <div class="form-group"> <label for="password">Confirm Password</label> <input name="repassword" type="password" class="form-control" data-v-equal="#password" required> </div> <div class="form-group"> <label>URL</label> <input type="url" class="form-control" placeholder="http://www" required> </div> <div class="form-group"> <label>Using Regex</label> <input type="text" class="form-control" pattern="[0-9]+" title="Only number." required> </div> <div class="form-group"> <label>Custom Min/Max Values</label> <input type="text" class="form-control" data-v-min="10" data-v-max="100"> </div> <div class="form-group"> <label>Custom Min/Max Length</label> <input type="text" class="form-control" data-v-min-length="5" data-v-max-length="10"> </div> <div class="form-group"> <label>Multiple Select</label> <select class="form-select" multiple data-v-min-select="2" data-v-max-select="3"> <option selected>Open this select menu</option> <option value="1">One</option> <option value="2">Two</option> <option value="3">Three</option> <option value="4">Four</option> <option value="5">Five</option> </select> </div> <div class="form-group"> <label>Textarea</label> <textarea class="form-control" minlength="10" maxlength="165"></textarea> </div> <div class="form-group"> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="defaultCheck1" > <label class="form-check-label" for="defaultCheck1"> checkbox 1 </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="defaultCheck2" > <label class="form-check-label" for="defaultCheck2"> checkbox 2 </label> </div> <div class="form-check"> <input class="form-check-input" type="checkbox" value="" id="defaultCheck3" > <label class="form-check-label" for="defaultCheck3"> checkbox 3 </label> </div> </div> <div class="form-group"> <label>File Input</label> <input type="file" class="form-control" data-v-min-size="400" data-v-max-size="450"> </div> <div class="form-group"> <label>Date Input</label> <input type="date" class="form-control" min="2020-10-20"> </div> <div class="form-group"> <label>Custom message</label> <input type="text" class="form-control" minlength="10" data-v-message="Please enter minimum 10 characters" required> </div> <div class="form-group"> <input type="submit" class="btn btn-primary" value="Submit"> </div> </form>
3.激活表单验证插件并确定JSON语言的路径。可用语言:
let validator = $('form.example').jbvalidator({ language: 'dist/lang/en.json' });
4.如您在en.json公司
.
{ "maxValue": "You cannot enter a number greater than %s.", "minValue": "Please enter a number greater than %s.", "maxLength": "Please use maximum %s character. You are using %s characters.", "minLength": "Please use minimum %s character, you are using %s characters.", "minSelectOption": "Please select at least %s options.", "maxSelectOption": "Please select at most %s options.", "groupCheckBox": "Please select at least %s options.", "equal": "This field does not match %s", "fileMinSize": "File size cannot be less than %s bytes.", "fileMaxSize": "File size cannot be more than %s bytes.", "number": "Please write a number." }
5.示例显示了如何在服务器端验证表单字段。
$(document).on('submit', '.example', function(){ $.ajax({ method:"get", url:"test.json", data: $(this).serialize(), success: function (data){ if(data.status === 'error') { validatorServerSide.errorTrigger($('[name=username]'), data.message); } } }) return false; });
6.您也可以使用JavaScript创建自己的验证规则。
validator.validator.custom = function(el, event){ if($(el).is('[name=password]') && $(el).val().length < 5){ return 'Your password is too weak.'; } }
7.确定是否在有效时将成功应用于表单字段。默认值:false。
let validator = $('form.example').jbvalidator({ language: 'dist/lang/en.json', successClass: true });
8.覆盖默认的CSS类。
let validator = $('form.example').jbvalidator({ validFeedBackClass: 'valid-feedbak', invalidFeedBackClass: 'invalid-feedback', validClass: 'is-valid', invalidClass: 'is-invalid' });
9.API方法。
// add custom validator validator.validator(validation) // show errors without submitting the form, return error count validator.checkAll() // show the error messages returned from the server. validator.errorTrigger(): // reload instance after dynamic element is added validator.reload():
作者:emretulek
网站:https://emretulek.github.io/jbvalidator/
v1.0.9(2022年2月3日)
v1.0.8(2022年1月1日)
1.0.7版(2021 12月12日)
1.0.6版(2021 6月10日)
1.0.5版(2021 9月15日)
1.0.4版(2021 11月6日)
1.0.3版(2021 10月5日)
1.0.1版(2021 10月4日)