AngularJS 양식
- 이전 페이지 AngularJS 이벤트
- 다음 페이지 AngularJS 검증
AngularJS 中的表单提供输入控件的数据绑定和验证。
输入控件
输入控件是 HTML 输入元素:
- input 元素
- select 元素
- button 元素
- 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 = "Bill"; }); </script>
它也可以在应用程序的其他位置被引用:
예제
<form> 名字: <input type="text" ng-model="firstname"> </form> <h1>您输入的是:{{firstname}}</h1>
复选框
复选框的值为 true
或 false
。将 ng-model
指令应用于复选框,并在您的应用程序中使用其值。
예제
如果选中复选框,则显示标题:
<form> 选中以显示标题: <input type="checkbox" ng-model="myVar"> </form> <h1 ng-show="myVar">我的标题</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 ng-model="myVar"> <option value=""> <option value="dogs">Dogs <option value="tuts">Tutorials <option value="cars">Cars </select> </form>
myVar의 값은 dogs
、tuts
或 cars
。
AngularJS 表单示例
名字: Bill 姓氏: Gates 重置 form = {"firstName":"Bill","lastName":"Gates"} master = {"firstName":"Bill","lastName":"Gates"}应用程序代码
<div ng-app="myApp" ng-controller="formCtrl"> <form novalidate> 名字:<br> <input type="text" ng-model="user.firstName"><br> 姓氏:<br> <input type="text" ng-model="user.lastName"> <br><br> <button ng-click="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: "Bill", lastName: "Gates"}; $scope.reset = function() { $scope.user = angular.copy($scope.master); ; $scope.reset(); }); </script>
novalidate 속성은 HTML5에서 새로운 속성입니다. 기본 브라우저 검증을 비활성화합니다
예제 설명
ng-app
지시는 AngularJS 애플리케이션을 정의합니다
ng-controller
지시는 애플리케이션 컨트롤러를 정의합니다
ng-model
지시는 두 개의 입력 요소를 모델의 user 객체에 바인딩합니다
formCtrl
컨트롤러를 master
객체를 초기 값으로 설정하고, reset()
메서드.
reset()
메서드는 user
객체가 user에 설정됩니다 master
객체.
ng-click
지시는 버튼 클릭 시에만 호출됩니다 reset()
메서드.
이 애플리케이션은 novalidate 속성이 필요하지 않지만, 일반적으로 AngularJS 양식에서 기본 HTML5 검증을 대체하기 위해 사용됩니다.
- 이전 페이지 AngularJS 이벤트
- 다음 페이지 AngularJS 검증