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 相关文章推荐
js判读浏览器是否支持html5的canvas的代码
Nov 18 Javascript
javascript中Number对象的toString()方法分析
Dec 20 Javascript
JavaScript 学习笔记之变量及其作用域
Jan 14 Javascript
jquery实现全选、反选、获得所有选中的checkbox
Sep 13 Javascript
ionic实现可滑动的tab选项卡切换效果
Apr 15 Javascript
js html5 css俄罗斯方块游戏再现
Oct 17 Javascript
AngularJS创建自定义指令的方法详解
Nov 03 Javascript
bootstrap输入框组件使用方法详解
Jan 19 Javascript
JS手机端touch事件计算滑动距离的方法示例
Oct 26 Javascript
详解vue开发中调用微信jssdk的问题
Apr 16 Javascript
vue使用一些外部插件及样式的配置代码
Nov 18 Javascript
在react-antd中弹出层form内容传递给父组件的操作
Oct 24 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
WordPress中创建用户角色的相关PHP函数使用详解
2015/12/25 PHP
PHP快速排序quicksort实例详解
2016/09/28 PHP
ThinkPHP中类的构造函数_construct()与_initialize()的区别详解
2017/03/13 PHP
了不起的node.js读书笔记之例程分析
2014/12/22 Javascript
使用Plupload实现直接上传附件至七牛云存储
2014/12/26 Javascript
JS实现环形进度条(从0到100%)效果
2016/07/05 Javascript
JS解决iframe之间通信和自适应高度的问题
2016/08/24 Javascript
jquery replace方法去空格
2017/05/08 jQuery
详解jquery选择器的原理
2017/08/01 jQuery
vue-baidu-map 进入页面自动定位的解决方案(推荐)
2018/04/28 Javascript
Angular4.x Event (DOM事件和自定义事件详解)
2018/10/09 Javascript
微信小程序如何使用globalData的方法
2019/06/06 Javascript
vue+element 模态框表格形式的可编辑表单实现
2019/06/07 Javascript
ES5和ES6中类的区别总结
2020/12/21 Javascript
多种类型jQuery网页验证码插件代码实例
2021/01/09 jQuery
[01:03:09]完美世界DOTA2联赛PWL S2 Forest vs SZ 第二场 11.25
2020/11/26 DOTA
python服务器端收发请求的实现代码
2014/09/29 Python
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
python读取word文档的方法
2015/05/09 Python
python flask 多对多表查询功能
2017/06/25 Python
Python numpy实现数组合并实例(vstack,hstack)
2018/01/09 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
Python使用numpy模块实现矩阵和列表的连接操作方法
2019/06/26 Python
利用python在大量数据文件下删除某一行的例子
2019/08/21 Python
python为Django项目上的每个应用程序创建不同的自定义404页面(最佳答案)
2020/03/09 Python
python中return如何写
2020/06/18 Python
pytorch SENet实现案例
2020/06/24 Python
div或img图片高度随宽度自适应的方法
2020/02/06 HTML / CSS
乌克兰机票、铁路和巴士票、酒店搜索、保险:Tickets.ua
2020/01/11 全球购物
十佳教师事迹材料
2014/01/11 职场文书
教师党员公开承诺书
2014/03/25 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
公司总经理岗位职责
2015/04/01 职场文书
2016年大学生就业指导课心得体会
2015/10/09 职场文书
SQL Server实现分页方法介绍
2022/03/16 SQL Server
Pandas实现DataFrame的简单运算、统计与排序
2022/03/31 Python