在AngularJS Forms提供的数据绑定和输入控件的验证。
输入控件
输入控制HTML输入元素:
- 输入元素
- 选择元素
- 按钮元素
- textarea的元素
数据绑定
输入控件提供了通过使用数据绑定ng-model
指令。
<input type="text" ng-model="firstname">
该应用程序现在有一个命名属性firstname
。
在ng-model
指令结合输入控制器到应用程序的其余部分。
属性firstname
,可以在一个控制器被称为:
例
<script>
var app = angular.module('myApp', []);
app.controller('formCtrl',
function($scope) {
$scope.firstname = "John";
});
</script>
试一试» 它也可以被称为应用程序中的其他地方:
例
<form>
First Name: <input type="text" ng-model="firstname">
</form>
<h1>You entered: {{firstname}}</h1>
试一试» 复选框
一个复选框的值是true
还是false
。 应用ng-model
指令一个复选框,并在应用程序中使用它的价值。
例
显示标题,如果复选框被选中:
<form>
Check to show a header:
<input type="checkbox" ng-model="myVar">
</form>
<h1 ng-show="myVar">My
Header</h1>
试一试» 单选按钮
绑定单选按钮与您的应用程序ng-model
指令。
具有相同的单选按钮ng-model
可以有不同的值,但是只有所选择的一个将被使用。
例
显示一些文本,基于所选择的单选按钮的值:
<form>
Pick a topic:
<input type="radio" ng-model="myVar"
value="dogs">Dogs
<input type="radio" ng-model="myVar" value="tuts">Tutorials
<input type="radio" ng-model="myVar" value="cars">Cars
</form>
试一试» myVar的值为将是要么dogs
, tuts
或cars
。
选择框
绑定选择框与您的应用程序ng-model
指令。
在定义的属性ng-model
属性将在选择框选择的选项的值。
例
显示一些文本的基础上,选择选项的值:
<form>
Select a topic:
<select ng-model="myVar">
<option value="">
<option value="dogs">Dogs
<option value="tuts">Tutorials
<option
value="cars">Cars
</select>
</form>
试一试» myVar的值为将是要么dogs
, tuts
或cars
。
一个AngularJS形式实例
表= {{用户}}
主= {{主}}
应用程序代码
<div ng-app="myApp" ng-controller="formCtrl">
<form
novalidate>
First Name:<br>
<input type="text" ng-model="user.firstName"><br>
Last
Name:<br>
<input type="text" ng-model="user.lastName">
<br><br>
<button ng-click="reset()">RESET</button>
</form>
<p>form = {{ user}}</p>
<p>master = {{ master}}</p>
</div>
<script>
var app =
angular.module('myApp', []);
app.controller('formCtrl',
function($scope) {
$scope.master = {firstName: "John", lastName: "Doe"};
$scope.reset = function() {
$scope.user
= angular.copy($scope.master);
};
$scope.reset();
});
</script>
试一试» novalidate属性是HTML5中的新。 它禁止任何默认浏览器验证。 |
例子解释:
该NG-应用程序指令定义了AngularJS应用。
吴控制器指令定义了应用程序控制器。
在NG-模型指令结合两个输入元素到模型中的用户对象。
该formCtrl控制器设置初始值主对象,并定义了reset()方法。
复位()方法设置的用户对象等于主对象。
在NG-点击指令调用reset()方法,只有当按钮被点击。
不需要novalidate属性这个应用,但通常你会用它AngularJS的形式,覆盖标准HTML5验证。