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 相关文章推荐
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
Nov 25 Javascript
深入理解JavaScript系列(37):设计模式之享元模式详解
Mar 04 Javascript
JavaScript将一个数组插入到另一个数组的方法
Mar 19 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
Sep 16 Javascript
JavaScript中浅讲ajax图文详解
Nov 11 Javascript
jquery ajaxfileupload异步上传插件使用详解
Feb 08 Javascript
Kindeditor单独调用单图上传增加预览功能的实例
Jul 31 Javascript
浅谈ES6 模板字符串的具体使用方法
Nov 07 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
Sep 11 Javascript
Vuex的基本概念、项目搭建以及入坑点
Nov 04 Javascript
JavaScript异步操作的几种常见处理方法实例总结
May 11 Javascript
Javascript基于OOP实实现探测器功能代码实例
Aug 26 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
递归列出所有文件和目录
2006/10/09 PHP
php Smarty模板生成html文档的方法
2010/04/12 PHP
php编写一个简单的路由类
2011/04/13 PHP
跟我学Laravel之配置Laravel
2014/10/15 PHP
详解PHP的Yii框架中日志的相关配置及使用
2015/12/08 PHP
PHP抓取及分析网页的方法详解
2016/04/26 PHP
laravel实现按时间日期进行分组统计方法示例
2019/03/23 PHP
8款非常棒的响应式jQuery 幻灯片插件推荐
2012/02/02 Javascript
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
2012/02/27 Javascript
jQuery提交多个表单的小技巧
2014/07/27 Javascript
jQuery学习笔记之2个小技巧
2015/01/19 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
微信小程序 摇一摇抽奖简单实例实现代码
2017/01/09 Javascript
JavaScript实现跟随滚动缓冲运动广告框
2017/07/15 Javascript
javaScript中的空值和假值
2017/12/18 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
[59:30]完美世界DOTA2联赛PWL S3 access vs LBZS 第二场 12.20
2020/12/23 DOTA
Python标准库之循环器(itertools)介绍
2014/11/25 Python
Python中实现对list做减法操作介绍
2015/01/09 Python
python操作oracle的完整教程分享
2018/01/30 Python
python 实现判断ip连通性的方法总结
2018/04/22 Python
Python 删除整个文本中的空格,并实现按行显示
2018/07/24 Python
Python标准库shutil用法实例详解
2018/08/13 Python
python实现栅栏加解密 支持密钥加密
2019/03/20 Python
Python实现鼠标自动在屏幕上随机移动功能
2020/03/14 Python
CSS3条纹背景制作的实战攻略
2016/05/31 HTML / CSS
KIKO美国官网:意大利的平价彩妆品牌
2017/05/16 全球购物
英国最大的网上药品商店:Chemist Direct
2017/12/16 全球购物
大学生涯自我鉴定
2014/01/16 职场文书
员工培训协议书
2014/09/15 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
新学期小学班主任工作计划
2019/06/21 职场文书
详解nginx安装过程并代理下载服务器文件
2022/02/12 Servers
从零开始在Centos7上部署SpringBoot项目
2022/04/07 Servers
php解析非标准json、非规范json的方式实例
2022/05/10 PHP