zoukankan      html  css  js  c++  java
  • bootstrap中的表单信息验证

    前端对表单输入信息的格式进行验证有很多方法,下面两种方式效果比较不错也很简单。其中第一种仅在点击提交按钮后显示,而第二种很灵活。

    对于使用Bootstrap开发的前端,感觉第二种风格比较统一。

    第一种:利用html5的新特性

      在<input>标签中加入新的属性

      required:要求不能为空

      patten=”正则表达式”:设置内容的格式

      title=”提示信息”:弹出框的显示内容

      这一种比较简单,没有利用Bootstrap的特性。效果如下:

    第二种:配合bootstrap的样式表

      有一些现成的验证插件,但自己写也比较简单。利用bootstrap中表单不同状态不同样式,以及对应的图标和帮助文字,主要工作就是判断信息格式,根据结果修改对应标签的class。

      这里修改了<div>:form-group has-feedback has-success(has-error)

      帮助文字以及图标的class。

    一个简单例子如下:

    html代码:

    <div id="accountDiv"class="form-group has-feedback">
      <label>用户名</label>
      <input type="text" name="account" id="account" class="form-control" placeholder="请输入6-16位字符" onclick="check_info()" 
                        required pattern="[a-z0-9A-Z]{6,16}" title="帐号应为6-16位的字母或数字">
      <span id="accountIcon" class="hide"></span>
      <br><br><br>
      <span id="account_warning" class="help-block hide">账号为6-16位字符</span>
    </div>

    js代码:

    var account = document.getElementById("account").value;
        if ((account.length != 0) && ((account.length < 6) || (account.length >16)))
        {
            document.getElementById("account_warning").className = "help-block";
            document.getElementById("accountDiv").className="form-group has-error has-feedback";
            document.getElementById("accountIcon").className="glyphicon glyphicon-remove form-control-feedback";
        }
        else if(account.length != 0)
        {
            document.getElementById("account_warning").className = "help-block hide";
            document.getElementById("accountDiv").className="form-group has-success has-feedback";
            document.getElementById("accountIcon").className="glyphicon glyphicon-ok form-control-feedback";
            all_info_are_right--;
        }
        else
        {
            document.getElementById("account_warning").className = "help-block hide";
            document.getElementById("accountDiv").className="form-group has-feedback";
            document.getElementById("accountIcon").className="hide";
        }

    效果如下:

  • 相关阅读:
    docker--docker介绍
    docker--虚拟化
    高级运维工程师的打怪升级之路
    mysql常用函数
    CentOS 7 下使用 Firewall
    51nod 1094 和为k的连续区间(map+前缀和)
    51nod 1092 回文字符串(dp)
    51nod 1062 序列中最大的数(打表预处理)
    51nod 1284 2 3 5 7的倍数(容斥原理+反面思考)
    51nod 1347 旋转字符串(思维好题)
  • 原文地址:https://www.cnblogs.com/saliu/p/8012520.html
Copyright © 2011-2022 走看看