ng-model

本文详细介绍了 AngularJS 中 ng-model 指令的功能及用途,包括为应用程序数据提供类型验证、状态标记以及如何通过该指令绑定 HTML 元素到表单等。此外还列举了 ng-model 指令根据表单域状态动态添加和移除 CSS 类的方式。

ng-model 指令也可以:

  • 为应用程序数据提供类型验证(number、email、required)。
  • 为应用程序数据提供状态(invalid、dirty、touched、error)。
  • 为 HTML 元素提供 CSS 类。
  • 绑定 HTML 元素到 HTML 表单。

 

ng-model 指令用于绑定应用程序数据到 HTML 控制器(input, select, textarea)的值。

 

ng-model 指令根据表单域的状态添加/移除以下类:

  • ng-empty
  • ng-not-empty
  • ng-touched
  • ng-untouched
  • ng-valid
  • ng-invalid
  • ng-dirty
  • ng-pending
  • ng-pristine
ng-model用于绑定应用程序(input、select、textarea)的数据到HTML的controller里,实现数据的双向绑定,专用于表单元素,用于其它元素无效,不但可以绑定变量到元素的value属性中,还可以绑定表单元素的输入值到数据模型(变量)中去。同时,它既可以绑定已有的变量,也可以生成数据模型,若scope中不存在变量,将会创建它 [^1][^2]。 使用示例如下: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script src="https://cdn.staticfile.org/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="myCtrl"> 名字:<input type="text" ng-model="name"> <p>{{name}}</p> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function ($scope) { $scope.name = 'star'; }) </script> </body> </html> ``` 在这个例子中,`ng-model="name"` 将输入框与 `$scope` 中的 `name` 变量进行了双向绑定,输入框内容的改变会更新 `name` 变量,`name` 变量的改变也会更新输入框的内容 [^4]。 另一个示例: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://cdn.staticfile.org/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="" ng-init="myText='Hello World!'"> <input type="text" ng-model="myText"></br> <h1 ng-bind="myText"></h1> </div> </body> </html> ``` 此例中,`ng-model="myText"` 同样实现了输入框和 `myText` 变量的双向绑定,输入框内容改变时,使用 `ng-bind` 显示的内容也会相应改变 [^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值