Validform+layer实现漂亮的表单验证特效


Posted in Javascript onJanuary 17, 2016

Validform是一款优秀的表单验证插件,layer是一款优秀的弹出窗口插件。下面通过例子看看这二者碰出的火花吧

首先要引入jquery,Validform和layer

<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.min.js"></script> 
<script type="text/javascript" src="http://res.layui.com/lay/lib/layer/src/layer.js"></script> 
<script type="text/javascript" src="http://lib.h-ui.net/Validform/5.3.2/Validform.min.js"></script>

HTML

<form action="post.php" method="post" name="form" class="form form-horizontal" id="form-Validform"> 
  <div class="row cl"> 
   <label class="form-label col-3"><span class="c-red">*</span>用户昵称:</label> 
   <div class="formControls col-8"> 
    <input type="text" class="input-text" value="" placeholder="可使用3-16位中英文字符" id="uname" name="uname" datatype="*2-16" nullmsg="用户昵称不能为空"> 
   </div> 
  </div> 
  <div class="row cl"> 
   <label class="form-label col-3"><span class="c-red">*</span>用户密码:</label> 
   <div class="formControls col-8"> 
    <input type="text" class="input-text" value="" placeholder="5-20位,范围[0-9a-zA-Z_@!.-]" id="pwd" name="pwd" datatype="/\w{5,20}/i" nullmsg="用户密码不能为空"> 
   </div> 
  </div> 
   <div class="row cl"> 
     <label class="form-label col-3"><span class="c-red">*</span>Email:</label> 
     <div class="formControls col-8"> 
      <input type="text" class="input-text" value="" placeholder="****@***.***" id="email" name="email" datatype="e" nullmsg="Email不能为空"> 
     </div> 
   </div> 
   <div class="row cl"> 
     <label class="form-label col-3"></label> 
     <div class="formControls col-8"> 
      <a href="javascript:;" id="safecodes" style="color:red"><?php echo $safecode; ?></a> 
     </div> 
   </div> 
  </div> 
  <div class="row cl" style="text-align:center"> 
    <input class="btn btn-primary radius" type="submit" value="  提交  "> 
  </div> 
  </form>

JS

<script type="text/javascript"> 
$(function(){ 
  $("#form-Validform").Validform({ 
    tiptype:4, 
    ajaxPost:true, 
    callback:function(data){ 
      if(data.status==1){ 
        layer.msg(data.info, {icon: data.status,time: 1000}, function(){ 
          location.reload();//刷新页面 
          });  
      } 
      else{ 
        layer.msg(data.info, {icon: data.status,time: 3000}); 
      } 
    } 
  }); 
  $('#safecodes').click( function () { 
    $('#safecode').val($('#safecodes').text()); 
  }); 
}); 
</script>

服务端返回

{"info":"\u6210\u529f","status":1,"url":""}

本例子流程:点击提交->逐项验证表单->完成验证ajax提交->根据返回信息判断->弹出消息

Javascript 相关文章推荐
jsp网页搜索结果中实现选中一行使其高亮
Feb 17 Javascript
javascript随机之洗牌算法深入分析
Jun 07 Javascript
使用Jquery实现每日签到功能
Apr 03 Javascript
利用JavaScript脚本实现滚屏效果的方法
Jul 07 Javascript
在jQuery中处理XML数据的大致方法
Aug 14 Javascript
Javascript字符串拼接小技巧(推荐)
Jun 02 Javascript
每天学点Vue源码之vm.$mount挂载函数
Mar 11 Javascript
微信小程序websocket实现即时聊天功能
May 21 Javascript
微信小程序通过一个json实现分享朋友圈图片
Sep 03 Javascript
layui点击数据表格添加或删除一行的例子
Sep 12 Javascript
Vue请求java服务端并返回数据代码实例
Nov 28 Javascript
Vue ElementUI实现:限制输入框只能输入正整数的问题
Jul 31 Javascript
javascript实现倒计时跳转页面
Jan 17 #Javascript
jQuery实现图片走马灯效果的原理分析
Jan 16 #Javascript
JavaScript时间操作之年月日星期级联操作
Jan 15 #Javascript
input点击后placeholder中的提示消息消失
Jan 15 #Javascript
jQuery插件imgPreviewQs实现上传图片预览
Jan 15 #Javascript
实例详解AngularJS实现无限级联动菜单
Jan 15 #Javascript
利用CSS3在Angular中实现动画
Jan 15 #Javascript
You might like
php的控制语句
2006/10/09 PHP
php 将bmp图片转为jpg等其他任意格式的图片
2009/06/29 PHP
php将会员数据导入到ucenter的代码
2010/07/18 PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
2011/12/19 PHP
php写的带缓存数据功能的mysqli类
2012/09/06 PHP
解析php做推送服务端实现ios消息推送
2013/07/01 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
php微信开发之谷歌测距
2018/06/14 PHP
window.print打印指定div指定网页指定区域的方法
2014/08/04 Javascript
JavaSacript中charCodeAt()方法的使用详解
2015/06/05 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
AngularJS 模块详解及简单实例
2016/07/28 Javascript
jQuery实现简单的tab标签页效果
2016/09/12 Javascript
vue.js绑定class和style样式(6)
2016/12/09 Javascript
js定时器实例分享
2016/12/20 Javascript
less简单入门(CSS 预处理语言)
2017/03/08 Javascript
详解vue挂载到dom上会发生什么
2019/01/20 Javascript
js图片无缝滚动插件使用详解
2020/05/26 Javascript
[01:08:09]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第二局
2016/03/02 DOTA
在Python中使用mechanize模块模拟浏览器功能
2015/05/05 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
python获取地震信息 微信实时推送
2019/06/18 Python
python程序 创建多线程过程详解
2019/09/23 Python
关于Pytorch的MLP模块实现方式
2020/01/07 Python
Pyqt助手安装PyQt5帮助文档过程图解
2020/11/20 Python
CSS3教程(7):CSS3嵌入字体
2009/04/02 HTML / CSS
NFL欧洲商店(德国):NFL Europe Shop DE
2018/11/03 全球购物
初级Java程序员面试题
2016/03/03 面试题
小学英语教学反思
2014/01/30 职场文书
2014年调度员工作总结
2014/11/19 职场文书
2014年校长工作总结
2014/12/11 职场文书
工作证明格式范文
2015/06/15 职场文书
小学数学教学反思范文
2016/02/16 职场文书
六年级作文之预言作文
2019/10/25 职场文书
Spring Boot 整合 Apache Dubbo的示例代码
2021/07/04 Java/Android
Golang bufio详细讲解
2022/04/21 Golang