欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

AngularJS表单验证

程序员文章站 2022-03-08 20:35:04
...

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表单的所有属性都打印出来