jQuery Validate 插件验证,,返回不同信息(json remote)自定义
问题
申请账号需要确认该账号是存在
解题思路:输入的登陆信息远程验证是否该账号已存在,并提示相对应的信息
No1.jquery.validate remote的用法 异步处理
常用
例子
$(document).ready(function() {
// 在键盘按下并释放及提交后验证提交表单
$("#signupForm").validate({
rules: {
username:{
required: true,
remote : {
url : '#index.php?check_suser_name_exist',
type: 'get',
data:{
username : function(){
return $('#username').val();
},
supplier_id: function(){
return $("#select_supplier_id").val();
}
}
}
},
password: {
required: true,
minlength: 5
},
confirm_password: {
required: true,
minlength: 5,
equalTo: "#password"
},
},
messages: {
supplier_username:{
required: '<i class="icon-exclamation-sign"></i>请填写登录账号',
remote : '<i class="icon-exclamation-sign"></i>登录账号已经被占用,请换一个'
},
password: {
required: "请输入密码",
minlength: "密码长度不能小于 5 个字母"
},
confirm_password: {
required: "请输入密码",
minlength: "密码长度不能小于 5 个字母",
equalTo: "两次密码输入不一致"
},
});
remote(url):请求远程校验。url 通常是一个远程调用方法。
remote url 异步处理php代码
public function check_suser_name_existOp() {
$condition = array();
$condition['suser_name'] = $_GET['username'];
$condition['supplier_id'] = intval($_GET['supplier_id']);//本供应商唯一
$model_supplier_user = Model('supplier');
$result = $model_supplier_user->getSupplierUserInfo($condition,'suser_id');
if(!$result) {
echo 'true';
} else {
echo 'false';
}
}
延伸:输入的登陆信息远程验证是否该账号已存在,但remote 返回true或false,但如果需要存在第三种情况,例如已经注册但还没启用??
Jquery 使用Ajax获取后台返回的Json数据后,添加自定义校验
常用
例子
添加自定义效验
addMethod:name, method, message
jQuery Validate 代码
supplier_username:{
required:true,
check_suser_name: true
},
//s make-in-lemon 账户存在重复处理
jQuery.validator.methods.check_suser_name = function(value, element) {
var result = true;
$.ajax({
type:"GET",
url:'index.php?act=supplier_joinin&op=check_user_name_exist',
data:{
username : function(){
return $('#username').val();
},
supplier_id: function(){
return $("select[name='supplier_id']").val();
}
},
dataType: 'json',
success:function(data){
if(data == 'already'){
alert('登录账号已经被占用,请换一个');
$('#username').val(''); }
if(data == 'close'){
alert('此账号在审核中,请直接登录查看');
$('#username').val('');
$('#username_tips').css('display','');
}
if(data == 'success'){
return $('#username').val();
}
} });
return result;
};
//e make-in-lemon 账户存在重复处
check_suser_name 自定义
由 check.php 获取 返回值 1.already 2.close 3.success
提示相应的提示
remote url 异步处理php代码
public function check_user_name_existOp() {
$condition = array();
$condition['suser_name'] = $_GET['username'];
$condition['supplier_id'] = intval($_GET['supplier_id']);//本供应商唯一
$model_supplier_user = Model('supplier');
$result = $model_supplier_user->getSupplierUserInfo($condition,'suser_id');
$supplier_user_exit = $model_supplier_user->getSupplierUserInfo($condition);
if($supplier_user_exit['suser_state'] == 1) {
echo json_encode('already');
} elseif( $supplier_user_exit['suser_state'] == "0" || $supplier_user_exit['suser_state'] == 2) {
echo json_encode('close');
}else{
echo json_encode('success');
}
相关链接
jQuery Validate 插件验证,,返回不同信息(json remote)自定义的更多相关文章
- jQuery Validate插件 验证实例
官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation Validate手册: http://www.cnblogs.co ...
- jQuery Validate 插件为表单提供了强大的验证功能
之前项目开发中,表单校验用的jQuery Validate 插件,这个插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的 ...
- jQuery Validate插件实现表单强大的验证功能
转自:http://www.jb51.net/article/76595.htm jQuery Validate插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自 ...
- 前端验证,jquery.validate插件
jQuery Validate 简介: jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用 ...
- 使用tooltip显示jquery.validate.unobtrusive验证信息
通过重写CSS实现使用tooltip显示jquery.validate.unobtrusive验证信息,效果如图: 1. 在ViewModel中定义验证规则 [Display(Name = " ...
- jQuery Validate 插件
>>>>>>>>>>>>>>>>>>>>>>>>> ...
- 【jQuery】(6)---jQuery validate插件
jQuery validate插件 一.导入js库 先导入jQuery库,然后导入Validate插件,如果是中文提示还需要 ...
- 1)jquery validate 远程验证remote,自定义验证 , 手机号验证 2)bootstrap validate 远程remote验证的方法.
1)jquery validate 远程验证remote,自定义验证 1-1: js <script src="YYFramework/Public/js/jquery-3.1.1. ...
- JQuery Validate插件与实现
菜鸟拙见,望请纠正 一:效果展示:以下是两个注册表单验证,左边使用Jquery validate插件实现,右边是自己用JQuery实现,效果差不多,但个人推荐用插件,毕竟前人栽了树而且长大了后人当然好 ...
随机推荐
- java poi 合并单元格后边框问题
在项目中用poi合并单元格,但发现边框会有不显示的问题. 在网上搜集了答案,来记录一下. 解决方法: 将每个没用到的单元格都设空值. 例如: HSSFCell cell = row.createCel ...
- java多线程什么时候释放锁—wait()、notify()
由于等待一个锁定线程只有在获得这把锁之后,才能恢复运行,所以让持有锁的线程在不需要锁的时候及时释放锁是很重要的.在以下情况下,持有锁的线程会释放锁: 1. 执行完同步代码块. 2. 在执行 ...
- [Head First Python]2. BIF(内置函数)
1- range() >>> for each in range(2): print(each) ... 0 1
- 在服务器上php执行某些远程函数出错
Warning: imagecreatefromjpeg(): php_network_getaddresses: getaddrinfo failed: Name or service not kn ...
- yii2安装与初始化-Yii2学习笔记(一)
一.安装项目: 使用composer下载安装yii2 advanced安装包: composer create-project yiisoft/yii2-app-advanced advanced(自 ...
- class Core<T> where T : class, new() 求解
where T:泛型约束,约束类型T必须具有无参的构造函数表示T必须是class类型或它的派生类.new()构造函数约束允许开发人员实例化一个泛型类型的对象. 一般情况下,无法创建一个泛型类型参数的实 ...
- java通过jdbc连接mysql数据库
下载mysql驱动包: http://dev.mysql.com/downloads/file.php?id=456317 解压之后里面有个mysql-connector-java-5.1.35-bi ...
- SpringMVC原理+流程图
SpringMVC工作原理:整个处理过程从一个HTTP请求开始:1)DispatcherServlet接收到请求后,根据对应配置文件中配置的处理器映射,找到对应的处理器映射项(HandlerMappi ...
- LeetCode_Integer to Roman
Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 t ...
- 主要协议SCSI、FC、iSCSI
一.SCSI SCSI是小型计算机系统接口(Small Computer System Interface)的简称,于1979首次提出,是为小型机研制的一种接口技术,现在已完全普及到了小型机,高低端服 ...