Page 86 - AngularJS权威教程
P. 86

66  第 9 章  内置指令


                 12. ng-bind-template
                 同ng-bind指令类似,ng-bind-template用来在视图中绑定多个表达式。

                 <div
                 ng-bind-template="{{message}}{{name}}">
                 </div>
                 13. ng-model

                 ng-model指令用来将input、select、text area或自定义表单控件同包含它们的作用域中
             的属性进行绑定。它可以提供并处理表单验证功能,在元素上设置相关的CSS类(ng-valid、
             ng-invalid等),并负责在父表单中注册控件。
                 它将当前作用域中运算表达式的值同给定的元素进行绑定。如果属性并不存在,它会隐式创
             建并将其添加到当前作用域中。

                 我们应该始终用ngModel来绑定$scope上一个数据模型内的属性,而不是$scope上的属性,
             这可以避免在作用域或后代作用域中发生属性覆盖。
                 例如:
                 <input type="text"
                     ng-model="modelName.someProperty" />
                 上面的例子展示了如何正确地考虑和使用ngModel。
                 14. ng-show/ng-hide

                 ng-show和ng-hide根据所给表达式的值来显示或隐藏HTML元素。当赋值给ng-show指令的
             值为false时元素会被隐藏。类似地,当赋值给ng-hide指令的值为true时元素也会被隐藏。

                 元素的显示或隐藏是通过移除或添加ng-hide这个CSS类来实现的。.ng-hide类被预先定义
             在了AngularJS的CSS文件中,并且它的display属性的值为none(用了!important标记)。

                 <div ng-show="2 + 2 == 5">
                     2 + 2 isn't 5, don't show
                 </div>
                 <div ng-show="2 + 2 == 4">
                     2 + 2 is 4, do show
                 </div>
                 <div ng-hide="2 + 2 == 5">
                     2 + 2 isn't 5, don't hide
                 </div>

                 <div ng-hide="2 + 2 == 4">
                     2 + 2 is 4, do hide
                 </div>
                 在线示例:http://jsbin.com/ihOkagE/1/。

                 15. ng-change
                 这个指令会在表单输入发生变化时计算给定表达式的值。因为要处理表单输入,这个指令要
             和ngModel联合起来使用。

                 <div ng-controller="EquationController">
                     <input type="text"
   81   82   83   84   85   86   87   88   89   90   91