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 相关文章推荐
asp(javascript)全角半角转换代码 dbc2sbc
Aug 06 Javascript
使用原生javascript创建通用表单验证——更锋利的使用dom对象
Sep 13 Javascript
javascript实现div的显示和隐藏的小例子
Jun 25 Javascript
javascript获取元素CSS样式代码示例
Nov 28 Javascript
js 判断控件获得焦点的示例代码
Mar 04 Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
Jun 20 Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
Apr 14 Javascript
javascript实现table表格隔行变色的方法
May 13 Javascript
JS响应鼠标点击实现两个滑块区间拖动效果
Oct 26 Javascript
Bootstrap模态框(modal)垂直居中的实例代码
Aug 18 Javascript
微信小程序动态显示项目倒计时
Jun 20 Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
Aug 13 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
PHP 二维数组和三维数组的过滤
2016/03/16 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
JS 页面内容搜索,类似于 Ctrl+F功能的实现代码
2007/08/13 Javascript
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
jQuery 添加/移除CSS类实现代码
2010/02/11 Javascript
jquery插件开发之实现jquery手风琴功能分享
2014/03/10 Javascript
浅析js预加载/延迟加载
2014/09/25 Javascript
js实现最短的XML格式化工具实例
2015/03/12 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
2017/02/07 Javascript
uploader秒传图片到服务器完整代码
2017/04/22 Javascript
BootStrap下的弹出框加载select2框架失败的解决方法
2017/08/31 Javascript
详解jquery插件jquery.viewport.js学习使用方法
2017/09/08 jQuery
JavaScript的setter与getter方法
2017/11/29 Javascript
vue 实现在函数中触发路由跳转的示例
2018/09/01 Javascript
vue实现点击按钮下载文件功能
2019/10/11 Javascript
node.js使用 http-proxy 创建代理服务器操作示例
2020/02/10 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
Python中的迭代器漫谈
2015/02/03 Python
python 函数传参之传值还是传引用的分析
2017/09/07 Python
对python列表里的字典元素去重方法详解
2019/01/21 Python
python挖矿算力测试程序详解
2019/07/03 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
2020/04/07 Python
python3.7 openpyxl 在excel单元格中写入数据实例
2020/09/01 Python
python3字符串输出常见面试题总结
2020/12/01 Python
css3 响应式媒体查询的示例代码
2019/09/25 HTML / CSS
大学生应聘求职信
2014/05/26 职场文书
药剂专业求职信
2014/06/20 职场文书
2014年医德医风工作总结
2014/11/13 职场文书
巾帼标兵事迹材料
2014/12/26 职场文书
幼儿园教师工作总结2015
2015/04/02 职场文书
结婚十年感言
2015/07/31 职场文书
Python机器学习应用之基于线性判别模型的分类篇详解
2022/01/18 Python