AngularJS入门教程之AngularJS模型


Posted in Javascript onApril 18, 2016

相关阅读:

在前面表达式和指令的教程中了解到,AngularJS模型(ng-model)可以将HTML输入域中的值与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="" ng-init="name='Jone Snow'">
名字: <input ng-model="name">
</div>
</body>
</html>

双向绑定 AngularJS的双向绑定, 是指ng-model与HTML的输入域绑定,同时也与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 Snow";
});
</script>
<p>修改输入框的值,标题的名字也会相应修改。</p>
</body>
</html>

应用状态 ng-model 指令可以为应用数据提供状态值

dirty 当数据被修改时状态为TRUE,没有被修改过为FALSE。即使修改为原来的值,也为TRUE。

valid 输入值合法时为TRUE,不合法则为FALSE。

touched 通过触屏点击为TRUE,没有点击为FALSE。

根据状态来应用CSS样式

<!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>
<style>
input.ng-invalid {
background-color: lightblue;
}
</style>
<body>
<form ng-app="" name="myForm">
输入你的名字:
<input name="myAddress" ng-model="text" required>
</form>
</body>
</html>

input域增加了required状态,当input域没有输入时,ng-model为input域增加ng-invalid样式。反之则删除ng-invalid样式。 ng-model 指令根据表单域的状态添加/移除以下样式: - ng-empty - ng-not-empty - ng-touched - ng-untouched - ng-valid - ng-invalid - ng-dirty - ng-pending - ng-pristine 使用ng-model验证邮箱格式

<!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>
</body>
</html>

myForm.myAddress.$error.email属性为TRUE(邮箱格式不正确)时,ng-show会控制span的内容显示出来。

以上内容是小编给大家介绍的AngularJS入门教程之AngularJS模型,希望对大家有所帮助!

Javascript 相关文章推荐
小议Function.apply() 之一------(函数的劫持与对象的复制)
Nov 30 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
Oct 23 Javascript
JQuery 常用方法和事件详细介绍
Apr 18 Javascript
JavaScript如何从listbox里同时删除多个项目
Oct 12 Javascript
js实现带按钮的上下滚动效果
May 12 Javascript
js实现简单的碰壁反弹效果
Aug 30 Javascript
浅谈regExp的test方法取得的值变化的原因及处理方法
Mar 01 Javascript
vue-cli的webpack模板项目配置文件分析
Apr 01 Javascript
bootstrap 点击空白处popover弹出框隐藏实例
Jan 24 Javascript
JS中利用FileReader实现上传图片前本地预览功能
Mar 02 Javascript
详解适配器在JavaScript中的体现
Sep 28 Javascript
js实现图片实时时钟
Jan 15 Javascript
AngularJS入门教程之AngularJS指令
Apr 18 #Javascript
AngularJS入门教程之AngularJS表达式
Apr 18 #Javascript
jQuery animate和CSS3相结合实现缓动追逐效果附源码下载
Apr 18 #Javascript
jQuery使用$.each遍历json数组的简单实现方法
Apr 18 #Javascript
jQuery validate+artdialog+jquery form实现弹出表单思路详解
Apr 18 #Javascript
JS中artdialog弹出框控件之提交表单思路详解
Apr 18 #Javascript
jQuery实现鼠标跟随提示层效果代码(可显示文本,Div,Table,Html等)
Apr 18 #Javascript
You might like
一个可以删除字符串中HTML标记的PHP函数
2006/10/09 PHP
PHP iconv 函数转gb2312的bug解决方法
2009/10/11 PHP
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
php中Socket创建与监听实现方法
2015/01/05 PHP
laravel migrate初学常见错误的解决方法
2017/10/11 PHP
ajax 文件上传应用简单实现
2009/03/03 Javascript
javascript 面向对象全新理练之继承与多态
2009/12/03 Javascript
JS文本框默认值处理详解
2013/07/10 Javascript
js密码强度检测
2016/01/07 Javascript
javascript如何实现360度全景照片问题汇总
2016/04/04 Javascript
jQuery Easyui使用(二)之可折叠面板动态加载无效果的解决方法
2016/08/17 Javascript
自动适应iframe右边的高度
2016/12/22 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
vue判断input输入内容全是空格的方法
2018/03/02 Javascript
Vue.js 实现数据展示全部和收起功能
2018/09/05 Javascript
[02:19]2014DOTA2国际邀请赛 专访820少年们一起去追梦吧
2014/07/14 DOTA
Python3基础之条件与循环控制实例解析
2014/08/13 Python
python生成日历实例解析
2014/08/21 Python
Python入门篇之正则表达式
2014/10/20 Python
Python自动化运维之IP地址处理模块详解
2017/12/10 Python
Python简单计算数组元素平均值的方法示例
2017/12/26 Python
Python实现翻转数组功能示例
2018/01/12 Python
Django框架模板介绍
2019/01/15 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
在终端启动Python时报错的解决方案
2020/11/20 Python
Python使用tkinter实现小时钟效果
2021/02/22 Python
CSS3用@font-face实现自定义英文字体
2013/09/23 HTML / CSS
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
高山背包:High Sierra
2017/11/23 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
澳大利亚电商Catch新西兰站:Catch.co.nz
2020/05/30 全球购物
2014年最新党员对照检查材料汇总
2014/09/15 职场文书
12.4法制宣传日标语
2014/10/08 职场文书
车辆年检委托书范本
2014/10/14 职场文书
2015学校师德师风工作总结
2015/04/22 职场文书
岗位聘任协议书
2015/09/21 职场文书