angularjs实现对表单输入改变的监控(ng-change和watch两种方式)


Posted in Javascript onAugust 29, 2018

angularjs通过ng-change和watch两种方式实现对表单输入改变的监控

直接上练习代码

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title></title>
</head>
<body ng-app="myApp" ng-controller="myContro">
  <div>
    <h1>ng-change指令</h1>
    ng-change指令,当表单输入发生改变时,会触发该事件<br />
    <div>
      姓名:<input type="text" id="name1" ng-model="user.name"
        placeholder="请输入姓名" ng-change="inputChange()" />
    </div>
    <div>
      年龄:<input type="number" ng-model="user.age"
        placeholder="请输入年龄" ng-change="inputChange()" />
    </div>
    <div>{{user.message}}</div>
  </div>
  <div>
    <h1>通过监听改变达到和ng-chang一样的效果</h1>
    <div>
      姓名:<input type="text" id="name2" ng-model="user2.name"
        placeholder="请输入姓名" />
    </div>
    <div>
      年龄:<input type="number" ng-model="user2.age"
        placeholder="请输入年龄" />
    </div>
    <div>{{user2.message}}</div>
  </div>
</body>
</html>
<script src="../JS/angular.js"></script>
<script type="text/javascript">
  var app = angular.module("myApp", []);
  app.controller("myContro", function ($scope, $interpolate) {
    $scope.user = {
      name: "",
      age: "",
      message: ""
    };
    $scope.user2 = {
      name: "",
      age: "",
      message: ""
    };
    $scope.messageTemp = "{{name}},您好,您今年{{age}}岁啦!";
    var template = $interpolate($scope.messageTemp);
    $scope.inputChange = function () {
      $scope.user.message = template({ name: $scope.user.name, age: $scope.user.age });
    };
    //// 下面通过watch监听实现ng-change一样的效果
    $scope.$watch("user2.name", function (newValue, oldValue) {
      $scope.getMessage(newValue, oldValue);
    });
    $scope.$watch("user2.age", function (newValue, oldValue) {
      $scope.getMessage(newValue, oldValue);
    });
    $scope.getMessage = function (value1, value2) {
      if (value1 != value2) {
        $scope.user2.message = template({ name: $scope.user2.name, age: $scope.user2.age });
      }
    }
  });
</script>

总结

以上所述是小编给大家介绍的angularjs实现对表单输入改变的监控,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
firefox火狐浏览器与与ie兼容的2个问题总结
Jul 20 Javascript
jQuery插件开发详细教程
Jun 06 Javascript
js限制文本框只能输入数字方法小结
Jun 16 Javascript
jQuery表格插件datatables用法总结
Sep 05 Javascript
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
Dec 20 Javascript
详解js图片轮播效果实现原理
Dec 17 Javascript
jquery插件jquery.confirm弹出确认消息
Dec 22 Javascript
AngularJS 使用$sce控制代码安全检查
Jan 05 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
Feb 13 Javascript
原生JS实现 MUI导航栏透明渐变效果
Nov 07 Javascript
基于datepicker定义自己的angular时间组件的示例
Mar 14 Javascript
使用vuex-persistedstate本地存储vuex
Apr 29 Vue.js
jQuery实现的淡入淡出图片轮播效果示例
Aug 29 #jQuery
JS实现数组的增删改查操作示例
Aug 29 #Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
Aug 29 #Javascript
vue-cli3.0使用及部分配置详解
Aug 29 #Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
Aug 29 #Javascript
Vue CLI3 如何支持less的方法示例
Aug 29 #Javascript
Vue实现美团app的影院推荐选座功能【推荐】
Aug 29 #Javascript
You might like
AJAX for PHP简单表数据查询实例
2007/01/02 PHP
基于PHP的cURL快速入门教程 (小偷采集程序)
2011/06/02 PHP
php中判断文件存在是用file_exists还是is_file的整理
2012/09/12 PHP
phpQuery占用内存过多的处理方法
2013/11/13 PHP
通过php添加xml文档内容的方法
2015/01/23 PHP
十幅图告诉你什么是PHP引用
2015/02/22 PHP
PHP二维数组去重算法
2016/12/17 PHP
免费空间广告万能消除代码
2006/09/04 Javascript
javascript 命名空间以提高代码重用性
2008/11/13 Javascript
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
jquery URL参数判断,确定菜单样式
2010/05/31 Javascript
关于this和self的使用说明
2010/08/01 Javascript
Node.js中使用计时器定时执行函数详解
2014/08/15 Javascript
js实现格式化金额,字符,时间的方法
2015/02/26 Javascript
jQuery和hwSlider实现内容响应式可触控滑动切换效果附源码下载(二)
2016/06/22 Javascript
vue.extend与vue.component的区别和联系
2018/09/19 Javascript
Vue项目中Api的组织和返回数据处理的操作
2019/11/04 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
2019/11/14 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
2020/05/06 Javascript
[01:12]DOTA2次级职业联赛 - Newbee.Y 战队宣传片
2014/12/01 DOTA
以Flask为例讲解Python的框架的使用方法
2015/04/29 Python
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
python好玩的项目—色情图片识别代码分享
2017/11/07 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
利用Django模版生成树状结构实例代码
2019/05/19 Python
Django后端接收嵌套Json数据及解析详解
2019/07/17 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
使用phonegap进行本地存储的实现方法
2017/03/31 HTML / CSS
斯图尔特·韦茨曼鞋加拿大官网:Stuart Weitzman加拿大
2019/10/13 全球购物
2014全国两会心得体会
2014/03/17 职场文书
教师求职自荐书
2014/06/14 职场文书
关于感恩的演讲稿200字
2014/08/26 职场文书
2014大学生党员评议个人总结
2014/09/22 职场文书
2015年人力资源工作总结
2015/04/08 职场文书
党支部半年考察意见
2015/06/01 职场文书
python游戏开发Pygame框架
2022/04/22 Python