AngularJS 模型详细介绍及实例代码


Posted in Javascript onJuly 27, 2016

AngularJS ng-model 指令

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

ng-model 指令

ng-model 指令可以将输入域的值与 AngularJS 创建的变量绑定。

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>

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

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

<p>使用 ng-model 指令来绑定输入域的值到控制器的属性。</p>

</body>
</html>

运行结果:

名字: 

使用 ng-model 指令来绑定输入域的值到控制器的属性。

双向绑定

双向绑定,在修改输入域的值时, AngularJS 属性的值也将修改:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>

<div ng-app="myApp" ng-controller="myCtrl">
名字: <input ng-model="name">
<h1>你输入了: {{name}}</h1>
</div>

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

<p>修改输入框的值,标题的名字也会相应修改。</p>

</body>
</html>

运行结果:

名字: 

你输入了: John Doe

修改输入框的值,标题的名字也会相应修改。

验证用户输入

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>

<form ng-app="" name="myForm">
  Email:
  <input type="email" name="myAddress" ng-model="text">
  <span ng-show="myForm.myAddress.$error.email">不是一个合法的邮箱地址</span>
</form>

<p>在输入框中输入你的邮箱地址,如果不是一个合法的邮箱地址,会弹出提示信息。</p>

</body>
</html>

运行结果:

Email: 

在输入框中输入你的邮箱地址,如果不是一个合法的邮箱地址,会弹出提示信息。

 CSS 类

ng-model 指令基于它们的状态为 HTML 元素提供了 CSS 类:

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> 
<style>
input.ng-invalid {
  background-color: lightblue;
}
</style>
</head>
<body>

<form ng-app="" name="myForm">
  输入你的名字:
  <input name="myName" ng-model="myText" required>
</form>

<p>编辑文本域,不同状态背景颜色会发送变化。</p>
<p>文本域添加了 required 属性,该值是必须的,如果为空则是不合法的。</p>

</body>
</html>

 运行结果:

输入你的名字: 

编辑文本域,不同状态背景颜色会发送变化。

文本域添加了 required 属性,该值是必须的,如果为空则是不合法的。

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

ng-empty
ng-not-empty
ng-touched
ng-untouched
ng-valid
ng-invalid
ng-dirty
ng-pending
ng-pristine

Javascript 相关文章推荐
tbody元素支持嵌套的注意方法
Mar 24 Javascript
extjs 学习笔记(二) Ext.Element类
Oct 13 Javascript
angularjs的一些优化小技巧
Dec 06 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
Aug 28 Javascript
深入浅析javascript立即执行函数
Oct 23 Javascript
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
Nov 15 Javascript
理解javascript闭包
Dec 15 Javascript
基于JavaScript实现div层跟随滚动条滑动
Jan 12 Javascript
Bootstrap3 内联单选和多选框
Dec 29 Javascript
Vue.js上下滚动加载组件的实例代码
Jul 17 Javascript
微信小程序之分享页面如何返回首页的示例
Mar 28 Javascript
javascript 数组(list)添加/删除的实现
Dec 17 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
Jul 27 #Javascript
详解Angular开发中的登陆与身份验证
Jul 27 #Javascript
jQuery+css实现非常漂亮的水平导航菜单效果
Jul 27 #Javascript
jQuery+CSS实现简单切换菜单示例
Jul 27 #Javascript
AngularJS 指令详细介绍
Jul 27 #Javascript
js中遍历Map对象的方法
Jul 27 #Javascript
angular.js分页代码的实例
Jul 27 #Javascript
You might like
怎样在UNIX系统下安装MySQL
2006/10/09 PHP
《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
2010/11/01 PHP
关于使用coreseek并为其做分页的介绍
2013/06/21 PHP
PHP实现删除非站内外部链接实例代码
2014/06/17 PHP
PHP临时文件的安全性分析
2014/07/04 PHP
7个鲜为人知却非常实用的PHP函数
2015/07/01 PHP
合格的PHP程序员必备技能
2015/11/13 PHP
Yii中的cookie的发送和读取
2016/07/27 PHP
php 可变函数使用小结
2018/06/12 PHP
微信公众号实现扫码获取微信用户信息(网页授权)
2019/04/09 PHP
基于jQuery的360图片展示实现代码
2012/06/14 Javascript
jquery的map与get方法详解
2013/11/04 Javascript
JS二维数组的定义说明
2014/03/03 Javascript
js拖拽的原型声明和用法总结
2016/04/04 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
vue内置指令详解
2018/04/03 Javascript
JavaScript实现获取两个排序数组的中位数算法示例
2019/02/26 Javascript
微信小程序登录数据解密及状态维持实例详解
2019/05/06 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
2020/11/12 Javascript
[03:44]2014DOTA2国际邀请赛 71专访:DK战队赛前讨论视频遭泄露
2014/07/13 DOTA
python通过socket查询whois的方法
2015/07/18 Python
Python 字典与字符串的互转实例
2017/01/13 Python
python学生管理系统开发
2019/01/30 Python
Pycharm新建模板默认添加个人信息的实例
2019/07/15 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
python中使用you-get库批量在线下载bilibili视频的教程
2020/03/10 Python
pycharm 多行批量缩进和反向缩进快捷键介绍
2021/01/15 Python
美国祛痘、抗衰老药妆品牌:Murad
2016/08/27 全球购物
美国大尺码女装零售商:TORRID
2016/10/01 全球购物
Nordgreen美国官网:在线购买极简主义斯堪的纳维亚手表
2019/07/24 全球购物
当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗
2014/04/28 面试题
爱国演讲稿500字
2014/05/04 职场文书
新郎父母婚礼致辞
2015/07/27 职场文书
2015年教师党员个人总结
2015/11/24 职场文书
《亲亲我的妈妈》观后感(3篇)
2019/09/26 职场文书
php修改word的实例方法
2021/11/17 PHP