AngularJS表单验证

AngularJS的表单验证大致有两种,一种是手动验证,一种是自动验证。

手动验证:

是通过AngularJS表单的属性来验证。而成为AngularJS表单必须满足两个条件:1、给form元素加上novalidate="novalidate";2、给form元素加上name="theForm".

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
    <script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>
    <form ng-app="myApp" ng-controller="validateCtrl" name="myForm" novalidate="novalidate">
        <p>
            用户名
            <input type="text" name="user" ng-model="user" required/>
            <span style="color:red" ng-show="myForm.user.$error.required">必填项</span>
        </p>
    </form>
</body>
<script>
    var app = angular.module('myApp',[]);
    app.controller('validateCtrl',function($scope){
        $scope.user = 'dddddd'
    })
</script>
</html>

  

● 给form加上novalidate="novalidate"意味着表单将不再使用HTML5验证特性
● 给form加上name="theForm"意味着表单的名称是theForm。如何使用theForm,比如我们验证表单是否被修改过theForm.$submitted
● 通过ng-submit提交表单
● formModel是$scope中的一个属性
● 对表单的Email进行了手动验证,使用了AngularJS表单的众多属性,比如theForm.email.$valid,theForm.$pristine,theForm.$submitted, theForm.email.$error.required,theForm.email.$error.email
● 通过<pre>{{theForm | json}}</pre>把AngularJS表单的所有属性都打印出来

 

posted @ 2017-08-25 11:14  Jaye8584  阅读(145)  评论(0编辑  收藏  举报