最新的Web開發教程
 

AngularJS NG-模式指令


在NG-模型指令結合HTML控件的應用程序的數據值(輸入,選擇,文本區域)。


在NG-模型指令

ng-model指令可以輸入字段的值綁定到AngularJS創建的變量。

<div ng-app="myApp" ng-controller="myCtrl">
    Name: <input ng-model="name">
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.name = "John Doe";
});
</script>
試一試»

雙向綁定

綁定是雙向的。 如果用戶更改輸入字段中的值時,AngularJS屬性也將改變它的價值:

<div ng-app="myApp" ng-controller="myCtrl">
    Name: <input ng-model="name">
    <h1>You entered: {{name}}</h1>
</div>
試一試»

驗證用戶輸入

ng-model指令可以為應用程序提供的數據(數字,電子郵件,必需)驗證類型:

<form ng-app="" name="myForm">
    Email:
    <input type="email" name="myAddress" ng-model="text">
    <span ng-show="myForm.myAddress.$error.email">Not a valid e-mail address</span>
</form>
試一試»

在上面的例子中,跨度將只有在表達中顯示ng-show屬性返回true

注意 如果物業ng-model屬性不存在,AngularJS會為您創建一個。

應用現狀

ng-model指令可以為應用程序提供的數據(無效,臟,感動,錯誤)狀態:

<form ng-app="" name="myForm" ng-init="myText = '[email protected]'">
    Email:
    <input type="email" name="myAddress" ng-model="myText" required>
    <h1>Status</h1>
    {{myForm.myAddress.$valid}}
    {{myForm.myAddress.$dirty}}
    {{myForm.myAddress.$touched}}
</form>
試一試»

CSS類

ng-model指令規定的CSS類HTML元素,這取決於他們的狀態:

<style>
input.ng-invalid {
    background-color: lightblue;
}
</style>
<body>

<form ng-app="" name="myForm">
    Enter your name:
    <input name="myAddress" ng-model="text" required>
</form>
試一試»

ng-model指令添加/刪除以下類,根據表單域的狀態:

  • NG-空
  • NG-不空
  • NG-感動
  • NG-無動於衷
  • NG-有效
  • NG-無效
  • NG-臟
  • NG-待定
  • NG-質樸