AngularJS入门教程之AngularJS模型

 更新时间:2016年04月18日 13:39:31   投稿:mrr  
这篇文章主要介绍了AngularJS入门教程之AngularJS模型的相关资料,需要的朋友可以参考下

相关阅读:

AngularJS入门教程之AngularJS表达式

AngularJS入门教程之AngularJS指令

在前面表达式和指令的教程中了解到,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模型,希望对大家有所帮助!

相关文章

  • angular5 子组件监听父组件传入值的变化方法

    angular5 子组件监听父组件传入值的变化方法

    今天小编就为大家分享一篇angular5 子组件监听父组件传入值的变化方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • 详解Angular16如何获取路由参数

    详解Angular16如何获取路由参数

    这篇文章主要为大家介绍了Angular16如何获得路由参数的实现方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • AngularJS中$apply方法和$watch方法用法总结

    AngularJS中$apply方法和$watch方法用法总结

    这篇文章主要介绍了AngularJS中$apply方法和$watch方法用法,结合实例形式总结分析了$apply方法和$watch方法的功能、参数含义、使用技巧与相关注意事项,需要的朋友可以参考下
    2016-12-12
  • AngularJS实现按钮提示与点击变色效果

    AngularJS实现按钮提示与点击变色效果

    这篇文章给大家介绍了如何利用AngularJS实现按钮提示与点击变色的效果,文中提供了实例代码,对大家学习AngularJS具有一定的参考借鉴价值,下面来一起看看吧。
    2016-09-09
  • angular.js+node.js实现下载图片处理详解

    angular.js+node.js实现下载图片处理详解

    这篇文章主要介绍了angular.js+node.js实现下载图片处理的相关资料,文中介绍的非常详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • 浅析AngularJS Filter用法

    浅析AngularJS Filter用法

    系统的学习了一下angularjs,发现angularjs的有些思想根php的模块smarty很像,例如数据绑定,filter。如果对smarty比较熟悉的话,学习angularjs会比较容易一点,这篇文章给大家介绍angularjs filter用法详解,感兴趣的朋友一起学习吧
    2015-12-12
  • angular.js + require.js构建模块化单页面应用的方法步骤

    angular.js + require.js构建模块化单页面应用的方法步骤

    这篇文章主要给大家介绍了关于利用angular.js + require.js构建模块化单页面应用的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-07-07
  • AngularJS利用Controller完成URL跳转

    AngularJS利用Controller完成URL跳转

    本文的主要内容是介绍在AngularJS中怎样利用Controller实现URL跳转,本文给出了实例代码,简单明了,有需要的可以参考学习。
    2016-08-08
  • Angular.js中上传指令ng-upload的基本使用教程

    Angular.js中上传指令ng-upload的基本使用教程

    这篇文章主要给大家介绍了关于Angular.js中上传指令ng-upload的基本使用方法,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-07-07
  • 基于Angular中ng-controller父子级嵌套的相关属性详解

    基于Angular中ng-controller父子级嵌套的相关属性详解

    今天小编就为大家分享一篇基于Angular中ng-controller父子级嵌套的相关属性详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10

最新评论