JS简单表单验证功能完整示例

 更新时间:2020年01月26日 12:48:32   作者:echo曦  
这篇文章主要介绍了JS简单表单验证功能,结合完整实例形式分析了JavaScript表单验证相关的字符串判断、正则验证、计算等相关操作技巧,需要的朋友可以参考下

本文实例讲述了JS简单表单验证功能。分享给大家供大家参考,具体如下:

简单js表单验证demo

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  <title>Document</title>
  <script>
    //当用户名获取焦点时
    function focus_username(){
      document.getElementById("user_res").innerHTML="<font color='#f00'>请输入用户名</font>";
    }
    //当用户名失去焦点时
    function blur_username(){
      var user_value=document.getElementsByName("username")[0].value;
      if(user_value.length===0){
      document.getElementById("user_res").innerHTML="<font color='#f00'>你没有输入用户名</font>";
          return false;
          //判断其长度是否在5~18之间 如果不在就提示用户
      }else if(user_value.length<5||user_value.length>18)
      {
      document.getElementById("user_res").innerHTML="<font color='#f00'>用户名长度必须在5-18之间</font>";
          return false;
      }else if(!checkUser(user_value)){
        //用户名还有特殊符号
      document.getElementById("user_res").innerHTML="<font color='#f00'>用户名含有特殊符号</font>";
          return false;
      }else{
        //用户名合法
      document.getElementById("user_res").innerHTML="<font color='#00f'>用户名合法</font>";
          return true;
      }
    }
    //密码获取焦点时
    function focus_password(){
      document.getElementById("pass_res").innerHTML="<font color='#f00'>请输入密码</font>";
    }
    //密码失去焦点时
    function blur_password(){
      var user_value=document.getElementsByName("password")[0].value;
      if(user_value.length===0){
      document.getElementById("pass_res").innerHTML="<font color='#f00'>你没有输入密码</font>";
          return false;
          //判断其长度是否在5~18之间 如果不在就提示用户
      }else if(user_value.length<5||user_value.length>18)
      {
      document.getElementById("pass_res").innerHTML="<font color='#f00'>用密码长度必须在5-18之间</font>";
          return false;
      }else{
        //密码合法
      document.getElementById("pass_res").innerHTML="<font color='#00f'>密码合法</font>";
          return true;
      }
    }
     function checkUser(user){
      var arr=["<",">","#","?","%"];
      var arr_length=arr.length;
      var user_length=user.length;
      for(var i=0;i<arr_length;i++){
        for(var j=0;j<user_length;j++){
          if(arr[i]===user.charAt(j)){
            return false;
          }
        }
      }
      //表示用户名合法
       return true;
     }
     //提交提交表单验证
     function checkForm(){
      var user_flag=blur_username();
      var pass_flag=blur_password();
      if(user_flag && pass_flag){
        alert("提交合法表单");
         return true;
      }else{
        alert("输入不合法");
        return false;
      }
     }
  </script>
</head>
<body>
                          <!--action 参数自定义跳转页面-->
  <form name='form1' onsubmit='return checkForm()' action='index.php'>
    <table width='600' align='center'>
      <tr>
        <td align='right' width='150'>用户名:</td>
        <td width='100'><input type='text' name='username' onfocus='focus_username()' onblur = 'blur_username()'/></td>
        <td><span id="user_res"></span></td>
      </tr>
      <tr>
        <td align='right' width='100'>密码:</td>
        <td width='100'><input type='password' name='password' onfocus='focus_password()' onblur = 'blur_password()'/></td>
        <td><span id="pass_res"></span></td>
      </tr>
      <tr>
        <td></td>
        <td><input type='submit' value='提交' /></td>
      </tr>
    </table>
  </form>
</body>
</html>

运行结果:

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript

正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript正则表达式技巧大全》、《JavaScript表单(form)操作技巧大全》、《JavaScript数据结构与算法技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • 纯js三维数组实现三级联动效果

    纯js三维数组实现三级联动效果

    这篇文章主要为大家详细介绍了纯js三维数组实现三级联动效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • uniapp下单选框的实现方法详解

    uniapp下单选框的实现方法详解

    在写表单的时候,总会遇到使用单选框或者复选框的时候,下面这篇文章主要给大家介绍了关于uniapp下单选框实现的相关资料,需要的朋友可以参考下
    2022-08-08
  • JS两种类型的表单提交方法实例分析

    JS两种类型的表单提交方法实例分析

    这篇文章主要介绍了JS两种类型的表单提交方法,结合实例形式分析了2种常用的表单提交验证的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • javascript事件委托的方式绑定详解

    javascript事件委托的方式绑定详解

    我们在学习JavaScript中,难免都会去网上查一些资料。也许偶尔就会遇到“事件委托”,但是,大多数时说的是“事件绑定”,对于“事件委托”,或是不提,或是浅尝辄止。对于我这个比较好奇的人来说,实在很蛋疼。尤其是想更多的了解“事件委托”的时候。
    2015-06-06
  • js 字数统计,区分英汉

    js 字数统计,区分英汉

    hta实现的字数统计效果代码,中文算两个,英文算一个
    2008-02-02
  • javascript 设置文本框中焦点的位置

    javascript 设置文本框中焦点的位置

    设置文本框中焦点的位置的实现代码
    2009-11-11
  • JavaScript组合模式Composite Pattern

    JavaScript组合模式Composite Pattern

    这篇文章主要介绍了学习理解JavaScript组合模式,组合模式及Composite Pattern又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象
    2022-04-04
  • JavaScript进阶练习及简单实例分析

    JavaScript进阶练习及简单实例分析

    下面小编就为大家带来一篇JavaScript进阶练习及简单实例分析。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • JavaScript中用字面量创建对象介绍

    JavaScript中用字面量创建对象介绍

    这篇文章主要介绍了JavaScript中用字面量创建对象介绍,本文直接给出代码实例,并讲解了一些技巧,需要的朋友可以参考下
    2014-12-12
  • 基于javascript实现窗口抖动效果

    基于javascript实现窗口抖动效果

    这篇文章主要介绍了基于javascript实现窗口抖动效果,需要的朋友可以参考下
    2016-01-01

最新评论