美文网首页
form表单通过anjularJS异步验证

form表单通过anjularJS异步验证

作者: BugMyGod | 来源:发表于2018-05-15 14:30 被阅读0次

    简单实现:用户名、邮箱输入 正确,login可点击
    输入错误,login不可点击

    用到的参数:

    $dirty :脏数据
    返回值:true/false
    $pristine:空数据
    没有操作的时候,返回值也是真
    $valid :合法数据
    $invalid : 非法数据
    $error: 错误
    用法:formName.inputName.参数 =true/false
    eg: login.username.$prinstine
    三目运算符:条件?语句A:语句B

    <!DOCTYPE html>  
    <html >  
    <head lang="en">  
        <meta charset="UTF-8">  
        <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1"/>  
        <!-- 解决兼容问题-->  
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">  
        <meta name="renderer" content="webkit">  
      
        <script src="bootstrap/js/jquery-3.1.0.min.js"></script>  
        <!-- jquery在前边,bootstrap依赖jQuery-->  
        <script src="bootstrap/js/bootstrap.min.js"></script>  
        <script src="js/angular.min.js"></script>  
      
        <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css"/>  
        <link rel="icon" href="favicon.icon">  
        <title></title>  
      
    </head>  
    <body class="container">  
    <header class="page-header">  
        <h1 class="text-capitalize">form表单通过AngularJS异步验证练习</h1>  
    </header>  
    <div >  
        <form action="" class="form-horizontal"  
              ng-app="myApp"  
              ng-controller="form2Ctrl"  
                name="login">  
            <div class="form-group has-feedback"  
                    data-ng-class="login.username.$pristine?'':(login.username.$valid?'has-success':'has-error')">  
                <!-- username是空数据?  执行 空 or 语句B  
             语句B:    username是合法数据? 执行 成功 or 错误  
             -->  
               <label class="control-label" for="username">username:</label>  
                <input type="text" class="form-control " id="username" name="username" required ng-model="username">  
                <span class="glyphicon form-control-feedback"  
                      data-ng-class="'glyphicon-ok'"  
                      ng-show="!login.username.$pristine&&login.username.$dirty&&login.username.$valid"></span>  
                <!-- 非空,脏数据,合法-->  
                <span class="glyphicon form-control-feedback"  
                      data-ng-class="'glyphicon-remove'"  
                      ng-show="!login.username.$pristine&&login.username.$dirty&&login.username.$invalid" ></span>  
                <!-- 非空,脏数据,不合法-->  
            </div>  
            <div class="form-group has-feedback"  
                 data-ng-class="login.email.$pristine?'':(login.email.$valid?'has-success':'has-error')">  
                <!-- email是空数据?  执行 空 or 语句B  
             语句B:   email是合法数据? 执行 成功 or 错误  
             -->  
                <label class="control-label" for="email">email:</label>  
                <input type="email" class="form-control " id="email" name="email" required ng-model="email">  
                <span class="glyphicon form-control-feedback"  
                      data-ng-class="'glyphicon-ok'"  
                      ng-show="!login.email.$pristine&&login.email.$dirty&&login.email.$valid"></span>  
                <!-- 非空,脏数据,合法-->  
                <span class="glyphicon form-control-feedback"  
                      data-ng-class="'glyphicon-remove'"  
                      ng-show="!login.email.$pristine&&login.email.$dirty&&login.email.$invalid" ></span>  
            </div>  
            <p class="pull-right">  
            <button type="button" class="btn btn-primary" data-ng-disabled="!login$valid">login</button>  
                                                            <!-- 不合法-->  
            </p>  
        </form>  
    </div>  
    <script>  
        var app= angular.module('myApp',[]);  
        app.controller('form2Ctrl',function($scope){  
      
        })  
      
    </script>  
      
      
    </body>  
      
    </html>  
    

    相关文章

      网友评论

          本文标题:form表单通过anjularJS异步验证

          本文链接:https://www.haomeiwen.com/subject/ungedftx.html