-
Notifications
You must be signed in to change notification settings - Fork 45
/
Copy pathAngularInputValidation.html
47 lines (47 loc) · 1.92 KB
/
AngularInputValidation.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!DOCTYPE html>
<html>
<head>
<script src="../node_modules/angular/angular.js"></script>
<style>
input.ng-invalid {
border: 2px solid red;
}
input.ng-valid {
border: 2px solid green;
}
</style>
</head>
<body ng-app>
<form name="frmHome">
<dl>
<dt>User Name</dt>
<dd><input type="text" name="txtName" ng-model="txtName" required ng-minlength="4" ng-maxlength="10">
<span ng-if="frmHome.txtName.$touched && frmHome.txtName.$error.required">Name Required</span>
<span ng-if="frmHome.txtName.$error.minlength">Name too short..</span>
<span ng-if="frmHome.txtName.$error.maxlength">Name too long..</span>
</dd>
<dt>Mobile</dt>
<dd><input type="text" name="txtMobile" ng-model="txtMobile" pattern="\+91[0-9]{10}" required>
<span ng-if="frmHome.txtMobile.$touched && frmHome.txtMobile.$error.required">Mobile Required</span>
<span ng-if="frmHome.txtMobile.$error.pattern">Invalid Mobile</span>
</dd>
</dl>
<button ng-disabled="frmHome.$invalid">Submit</button>
<button ng-disabled="frmHome.$pristine">Save</button>
</form>
<br>
<h2>Form State Validation</h2>
<dl>
<dt>Pristine - No fields Modified</dt>
<dd>{{frmHome.$pristine}}</dd>
<dt>Dirty - One or More fields modified</dt>
<dd>{{frmHome.$dirty}}</dd>
<dt>Valid - All Fields Valid</dt>
<dd>{{frmHome.$valid}}</dd>
<dt>Invalid - Any one field invalid</dt>
<dd>{{frmHome.$invalid}}</dd>
<dt>Submitted</dt>
<dd>{{frmHome.$submitted}}</dd>
</dl>
</body>
</html>