This article introduces an example of thinkphp5 using bootstrapvalidator to asynchronously verify the email address. I would like to share it with you. The details are as follows:
js verification
/** * Created by HONGXIN on 2017-10-23. */ $(function () { $('form').bootstrapValidator({ message: 'This value is not valid', feedbackIcons: { valid: 'glyphicon glyphicon-ok', invalid: 'glyphicon glyphicon-remove', validating: 'glyphicon glyphicon-refresh' }, live: 'disabled',//验证失败后,提交按钮仍然是可选状态 fields: { email: { message: '用户名验证失败',//默认 verbose: false, validators: { notEmpty: { message: '邮箱不能为空' }, emailAddress: { message: '邮箱地址格式有误' }, remote: { url: '/ajax_email', message:"此邮箱已经注册", type: "post", dataType: 'json', data: { //默认传递的就是输入框的值 }, delay: 500,//延迟效果 }, } }, password: { validators: { notEmpty: { message: '邮箱地址不能为空' }, stringLength: { min: 6, max: 18, message: '用户名长度必须在6到18位之间' }, }, }, password2: { validators: { notEmpty: { message: '确认密码不能为空' }, identical: { field: 'password', message: '两次密码必须一致' } } }, username:{ validators: { notEmpty: { message: '用户名不能为空' }, stringLength: { min: 2, max: 8, message: '用户名长度必须在2到8位之间' } } } } }); });
TP5 processing
public function ajax_email(){ //该message可以为空,它替换JS验证的message属性 echo json_encode(['valid'=>false,'message'=>'验证码不正确']); }
Several points to note for js verification
verbose: false, which means asynchronous background verification will be performed after js verification is legal, thus reducing server pressure
data: {}, the value of the input box is passed by default, so generally there is no need to write this attribute, or it can be empty
Background Note
Note that it is not return but echo
The above is the detailed content of Example of how tp5 uses bootstrapvalidator to verify email asynchronously. For more information, please follow other related articles on the PHP Chinese website!