小编给大家分享一下angularjs怎么实现对表单输入改变的监控,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
JS是JavaScript的简称,它是一种直译式的脚本语言,其解释器被称为JavaScript引擎,是浏览器的一部分,主要用于web的开发,可以给网站添加各种各样的动态效果,让网页更加美观。
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> <h2>ng-change指令</h2> 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> <h2>通过监听改变达到和ng-chang一样的效果</h2> <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怎么实现对表单输入改变的监控”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。