AngularJs ng-change事件/指令(转)
from:http://blog.csdn.net/u011127019/article/details/52564111
定义和用法
ng-change 指令用于告诉 AngularJS 在 HTML 元素值改变时需要执行的操作。
ng-change 指令需要搭配 ng-model
指令使用。
AngularJS ng-change 指令指令不会覆盖原生的 onchange 事件, 如果触发该事件,ng-change 表达式与原生的 onchange 事件都会执行。
ng-change 事件在值的每次改变时触发,它不需要等待一个完成的修改过程,或等待失去焦点的动作。
ng-change 事件只针对输入框值的真实修改,而不是通过 JavaScript 来修改。
语法
<input>, <select>, 和 <textarea> 元素支持。
<radio>,<checkbox>
参数值
值 | 描述 |
---|---|
expression | 元素值改变时执行表达式。 |
实例说明,radio和checkbox
注:checkbox ng-model总是是true或false,而不是value,其他的ng-model默认都是value 的值
HTML
- <h3>Radio 控件测试</h3>
- <p><label>
- <input type="radio" value="男" name="sex" ng-model="value1" ng-change="radioChecked()" />
- 男
- </label>
- <label>
- <input type="radio" value="女" name="sex" ng-model="value1" ng-change="radioChecked()" />
- 女
- </label></p>
- <h3>checked 控件测试</h3>
- <p><div class="checkbox">
- <label>
- <input name="agree" type="checkbox" value="同意" ng-model="value2" ng-change="checkboxClick()" />
- 同意协议
- </label>
- </div>
- <div class="checkbox">
- <label>
- <input name="agree" type="checkbox" value="同意2" ng-model="value2" ng-change="checkboxClick()" />
- 同意协议2
- </label>
- </div></p>
JS:
- var app = angular.module('myApp', []);
- app.controller('validateCtrl', function ($scope) {
- //randio ng-change事件和原始onchange相同
- //radio ng-model 的值是value
- $scope.radioChecked = function () {
- console.info($scope.value1);
- }
- //checkbox ng-change事件和原始onchange相同
- //checkbox ng-model总是是true或false
- $scope.checkboxClick = function () {
- console.info($scope.value2);
- }
- });
实例说明,text,select
HTML
- <form class="form-horizontal">
- <div class="form-group">
- <label class="control-label">姓名:</label>
- <input type="text" class="form-control" ng-model="name" ng-change="txtChange();" />
- </div>
- <div class="form-group">
- <label class="control-label">选择年级:</label>
- <select class="form-control" ng-change="selectChange();" ng-model="grade">
- <option value="1">一年级</option>
- <option value="2">二年级</option>
- </select>
- </div>
- </form>
JS
- var app = angular.module('myApp', []);
- app.controller('validateCtrl', function ($scope) {
- //textbox 的ng-change事件和原始ng-change不相同,而是和$scope.$watch()监听相同
- //textbox 的ng-model为当前输入框的内容,为value值
- $scope.txtChange = function () {
- console.info($scope.name);
- }
- //select 的ng-change事件和原始ng-change相同
- //ng-model 的默认情况下ng-model的结果为value值
- $scope.selectChange = function () {
- console.info($scope.grade);
- }
- });
AngularJs ng-change事件/指令(转)的更多相关文章
- angularjs学习笔记—事件指令
ngClick 适用标签:所有触发条件:单击 #html <div ng-controller="LearnCtrl"> <div ng-click=" ...
- AngularJS1.X学习笔记4-内置事件指令及其他
AngularJS为我们定义了一系列事件指令,方便我们对用户的操作作出响应.甚至他还有一个可选模块提供了触摸事件和手势事件的支持,为移动端开发提供了可能.现在开始学习一下AngularJS的事件指令. ...
- ng之自定义指令
最近开始研究并使用angular,今天就来简单讲讲对于ng中自定义指令的一下使用心得吧! 相信用过ng的人都对ng中的指令有所了解,指令,我将其理解为AngularJS操作HTML element的一 ...
- AngularJS HTML DOM& 事件
AngularJS 为 HTML DOM 元素的属性提供了绑定应用数据的指令. ng-disabled 指令直接绑定应用程序数据到 HTML 的 disabled 属性 <div ng-app= ...
- AngularJS 学习之事件
1.ng-click指令:定义了AngularJS点击事件 <div ng-app="" ng-controller="myCtrl"> <b ...
- angularjs的touch事件
angularJs没有touch事件.这里提供一个touch指令. ngTouch.js "use strict"; angular.module("ngTouch&qu ...
- Ⅶ.AngularJS的点点滴滴-- 事件
事件(和js一样有冒泡和捕获) <html> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2 ...
- angularjs directive and component 指令与组件 ( 1.5.0 以后 )
之前写过一篇了 http://www.cnblogs.com/keatkeat/p/3903673.html 但某些部分写的不太清楚,甚至有点错误,所以今天特地在这里再来谈谈. 这篇主要是说指令的隔离 ...
- 带你走近AngularJS - 创建自己定义指令
带你走近AngularJS系列: 带你走近AngularJS - 基本功能介绍 带你走近AngularJS - 体验指令实例 带你走近AngularJS - 创建自己定义指令 ------------ ...
- 带你走近AngularJS 之创建自定义指令
带你走近AngularJS 之创建自定义指令 为什么使用AngularJS 指令? 使用过 AngularJS 的朋友应该最感兴趣的是它的指令.现今市场上的前端框架也只有AngularJS 拥有自定义 ...
随机推荐
- Flink – Stream Task执行过程
Task.run if (invokable instanceof StatefulTask) { StatefulTask op = (StatefulTask) invokable; op.set ...
- 查找->动态查找表->B+树(无代码)
文字描述 B+树定义 B+树是应文件系统所需而出的一种B-树的变型树.一棵m阶的B+树和m阶的B-树的差异在于: (1)有n棵子树的结点中含有n个关键字 (2)所有的叶子结点中包含了全部关键字的信息, ...
- VB改写C#
1.VB的Val()函数 先从程序集中引入Microsoft.VisualBasic命名空间.不过,即便是引入了Microsoft.VisualBasic命名空间,还是不能直接使用像Val()这样的函 ...
- Dubbo服务化框架使用整理
一.垂直应用架构拆分 在应用架构的演进过程中,垂直应用架构因为开发便捷,学习成本低,对于实现业务功能的增删改查提供了高效的开发支持,有利于前期业务高速发展的的快速实现.但是随着系统业务功能的不断扩展和 ...
- 【JMeter】【性能测试】参数化,内存溢出问题
这一篇文章随便说一下JMETER的脚本参数化 1:Parameters的两种参数化方法 1.1:函数助手参数化 首先准备你的参数数据.我在bin/data中新建了一个dat文件,记事本另存为修改编码为 ...
- mysql触发器:插入数据前更新创建时间为服务器的时间
DROP TRIGGER IF EXISTS `upd_patientquestionnaire`; create trigger upd_patientquestionnaire BEFORE in ...
- InnoDB log file 设置多大合适?
简介: 数据库的东西,往往一个参数就牵涉N多知识点.所以简单的说一下.大家都知道innodb是支持事务的存储引擎.事务的四个特性ACID即原子性(atomicity),一致性(consistency) ...
- 报错解决——OSError: libdarknet.so: cannot open shared object file: No such file or directory
在python目录下打开终端,输入 python darknet.py 结果报错 Traceback (most recent call last): File “darknet.py”, line ...
- 爬虫请求库——requests
请求库,即可以模仿浏览器对网站发起请求的模块(库). requests模块 使用requests可以模拟浏览器的请求,requests模块的本质是封装了urllib3模块的功能,比起之前用到的urll ...
- Oracle(2)之多表查询&子查询&集合运算
多表查询 笛卡尔积 同时查询多张表时,每张表的每条数据都要和其它表的每条数据做组合.如下栗子,我们发现产生的总记录数是 56 条,还发现 emp 表是 14 条,dept 表是 4 条,56 条正是 ...