JavaScript 基础表单验证示例(纯Js实现)


Posted in Javascript onJuly 20, 2017

验证思路

JavaScript 基础表单验证示例(纯Js实现)

监听每个input控件的焦点离开(onblue),当焦点离开时调用验证函数,验证后修改第三栏文字,显示符合/不符合并返回true/false

JavaScript 基础表单验证示例(纯Js实现)

实现代码:

index.html

<!DOCTYPE html>
<html>

<head>
  <title></title>
  <pnk rel="stylesheet" href="css.css" rel="external nofollow" >
</head>

<body>
  <form id="form" action="" method="post" onsubmit="return vipdate()">
    <table class="table">
      <tr>
        <td>雇员编号</td>
        <td>
          <input type="text" id="empnb" name="empnb" onblur="vapdateEmpnb()">
        </td>
        <td>
          <span id="empnbMsg"></span>
        </td>
      </tr>
      <tr>
        <td>雇员姓名</td>
        <td>
          <input type="text" id="ename" name="ename" onblur="vapdateEname()">
        </td>
        <td>
          <span id="enameMsg"></span>
        </td>
      </tr>
      <tr>
        <td>雇员职位</td>
        <td>
          <input type="text" name="epost" id="epost" onblur="vapdateEpost()">
        </td>
        <td>
          <span id="epostMsg"></span>
        </td>
      </tr>
      <tr>
        <td>雇员日期</td>
        <td>
          <input type="text" name="" id="edate" name="edate" onblur="vapdateEdate()">
        </td>
        <td>
          <span id="edateMsg"></span>
        </td>
      </tr>
      <tr>
        <td>基本工资</td>
        <td>
          <input type="text" name="esalary" id="esalary" onblur="vapdateEsalary()">
        </td>
        <td>
          <span id="esalaryMsg"></span>
        </td>
      </tr>
      <tr>
        <td>佣金</td>
        <td>
          <input type="text" name="ebrok" id="ebrok" onblur="vapdateEbrok()">
        </td>
        <td>
          <span id="ebrokMsg"></span>
        </td>
      </tr>
      <tr>
        <td colspan="3">
          <input type="submit" autofocus="autofocus">
          <input type="reset">
        </td>
      </tr>
    </table>
  </form>
</body>
<script type="text/javascript" src="./FormVapdation.js"></script>

</html>

FormVapdation.js

// 日期选择
function layDate() {

}

// 验证雇员编号,4位纯数字编号
function vapdateEmpnb() {
  return vapdateRegexp("empnb", /^\d{4}$/);
}
// 验证雇员姓名,不为空
function vapdateEname() {
  return vapdateNull("ename");
}
// 验证雇员职位,不为空
function vapdateEpost() {
  return vapdateNull("epost");
}
// 验证雇员日期
function vapdateEdate() {
  return vapdateRegexp("edate", /^\d{4}-\d{2}-\d{2}$/)
}
// 验证基本工资
function vapdateEsalary() {
  return vapdateRegexp("esalary", /^\d+(\.\d{1,2})?$/)
}
// 验证佣金
function vapdateEbrok() {
  return vapdateRegexp("ebrok", /^\d+(\.\d{1,2})?$/)
}

// 提交时全部重新验证
function vapdate() {
  return vapdateEmpnb() && vapdateEname() && vapdateEpost() && vapdateEdate() && vapdateEsalary() && vapdateEbrok();
}
// 正则表达式验证
function vapdateRegexp(elemName, regexp) {
  var elem = document.getElementById(elemName);
  var msg = document.getElementById(elemName + 'Msg')
  console.log(regexp);
  console.log(elem.value);
  if (regexp.test(elem.value)) {
    msg.innerHTML = 'ok';
    msg.style.color = 'green';
    return true;
  } else {
    msg.innerHTML = '您的输入不符合规则';
    msg.style.color = 'red';
    return false;
  }
}
// 不为空验证
function vapdateNull(elemName) {
  var elem = document.getElementById(elemName);
  var msg = document.getElementById(elemName + 'Msg');
  console.log(elem.value);
  console.log(msg);
  if (elem.value == '' || elem.value == ' ') {
    msg.innerHTML = '您的输入不能为空';
    msg.style.color = 'red';
    return false;
  } else {
    msg.innerHTML = 'ok';
    msg.style.color = 'green';
    return true;
  }
}

css.css

html {
  font-size: 14px;
}

.table {
  border: 1px grey sopd;
}

.table tr {
  height: 2rem;
}

.table td {
  width: 15rem;
}

以上这篇JavaScript 基础表单验证示例(纯Js实现)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浅析jQuery中常用的元素查找方法总结
Jul 04 Javascript
JS判断对象是否存在的10种方法总结
Dec 23 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
Oct 16 Javascript
javascript HTML5文件上传FileReader API
Mar 27 Javascript
Vue.js实现一个自定义分页组件vue-paginaiton
Sep 05 Javascript
js仿支付宝多方框输入支付密码效果
Sep 27 Javascript
Javascript this 函数深入详解
Dec 13 Javascript
Vuejs实现带样式的单文件组件新方法
May 02 Javascript
JavaScript异步上传图片文件的实例代码
Jul 04 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
Mar 20 Javascript
vue组件间通信六种方式(总结篇)
May 15 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
Jun 05 Javascript
js 事件的传播机制(实例讲解)
Jul 20 #Javascript
详谈for循环里面的break和continue语句
Jul 20 #Javascript
js is_valid_filename验证文件名的函数
Jul 19 #Javascript
vue Render中slots的使用的实例代码
Jul 19 #Javascript
详解vue前后台数据交互vue-resource文档
Jul 19 #Javascript
解决vue router使用 history 模式刷新后404问题
Jul 19 #Javascript
深入理解vue Render函数
Jul 19 #Javascript
You might like
用PHP和ACCESS写聊天室(五)
2006/10/09 PHP
PHP伪静态写法附代码
2008/06/20 PHP
PHP 编写大型网站问题集
2010/05/07 PHP
PHP实现采集抓取淘宝网单个商品信息
2015/01/08 PHP
PHP生成唯一订单号
2015/07/05 PHP
微信公众号开发之语音消息识别php代码
2016/08/08 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
jquery ajax提交表单数据的两种实现方法
2010/04/29 Javascript
javascript工具库代码
2012/03/29 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
2012/12/12 Javascript
回车直接实现点击某按钮的效果即触发单击事件
2014/02/27 Javascript
JQuery 控制内容长度超出规定长度显示省略号
2014/05/23 Javascript
node.js中的fs.rmdir方法使用说明
2014/12/16 Javascript
Jquery实现动态切换图片的方法
2015/05/18 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
js中less常用的方法小结
2017/08/09 Javascript
react-native DatePicker日期选择组件的实现代码
2017/09/12 Javascript
Vue 动态设置路由参数的案例分析
2018/04/24 Javascript
详解用场景去理解函数柯里化(入门篇)
2019/04/11 Javascript
nodejs和react实现即时通讯简易聊天室功能
2019/08/21 NodeJs
vue中使用vue-pdf的方法详解
2020/09/05 Javascript
[03:02]2014DOTA2西雅图邀请赛 让队员自己告诉你DK NAVI备战情况
2014/07/08 DOTA
使用PyV8在Python爬虫中执行js代码
2017/02/16 Python
详解Django的model查询操作与查询性能优化
2018/10/16 Python
python的concat等多种用法详解
2018/11/28 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
澳大利亚制造的蜡烛和扩散器:Glasshouse Fragrances
2018/05/20 全球购物
LN-CC美国:伦敦时尚生活的缩影
2019/02/19 全球购物
人事专员岗位职责
2013/11/20 职场文书
初一英语教学反思
2014/01/11 职场文书
淘宝客服自我总结鉴定
2014/01/25 职场文书
运动会广播稿200米
2014/01/27 职场文书
社区母亲节活动方案
2014/03/05 职场文书
保护环境倡议书
2014/04/14 职场文书
学前班学生评语
2014/12/29 职场文书