angular实现input输入监听的示例


Posted in Javascript onAugust 31, 2018

最近做用户注册登录时,需要监控用户的输入以此来给用户提示,用到了angular的$watch功能,以下是例子:

jsp:

<form class="register ng-scope" ng-app="regist_app" onsubmit="registSumbitValid()" ng-controller="regist_control">

 <div class="item">
  <input id="username" name="username" placeholder="请填写11位手机号码" class="input-item" ng-model="username" >
  <span class="warnning">{{username_error}}</span>
 </div>
</form>

这里需要添加ng-app以及ng-controller来规定一个angularApp的范围,再在input标签中添加ng-model属性,让angularjs根据这个属性来监听输入,根据输入把用户提示放到{{username_error}}中

js:

var usernameValid=false;
var registApp =angular.module('regist_app',[]);
registApp.controller('regist_control',function($scope){
 $scope.username="";
 $scope.username_error="";
 var phonePattern=/\D+/;
 /*验证号码输入*/
 $scope.$watch('username',function(newValue,oldValue){
  if(newValue!=oldValue){
   if(newValue==""){
    $scope.username_error="号码不能为空";
    usernameValid=false;
   }
   else if(phonePattern.test(newValue)){
    $scope.username_error='只能输入数字';
    usernameValid=false;
   }
   else if(newValue.length!=11){
    $scope.username_error='格式不正确,请输入11位号码';
    usernameValid=false;
   }else if(newValue.length==11){
    $scope.username_error="";
    usernameValid=true;
   }
  }
 });
}

scope.scope.watch(参数,function),这个参数就是input的ng-model的值。function的第一个参数是新的值,第二个参数是旧的值,可以判断newValue来给用户相应的提示,结合pattern来判断用户输入是否合法。一个Controller中可以有多个scope.scope.watch(),这里我只贴出一个input的验证方法,其他的都差不多。

usernameValid这个值用来记录当前的input输入是否合法,用于表单提交时根据usernameValid来判断。

效果截图:

angular实现input输入监听的示例

angular实现input输入监听的示例

angular实现input输入监听的示例

以上这篇angular实现input输入监听的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS上传图片前的限制包括(jpg jpg gif及大小高宽)等
Dec 19 Javascript
js 数组去重的四种实用方法
Sep 09 Javascript
JS实现自动变化的导航菜单效果代码
Sep 09 Javascript
jquery ajax双击div可直接修改div中的内容
Mar 04 Javascript
node模块机制与异步处理详解
Mar 13 Javascript
Highcharts入门之简介
Aug 02 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
Aug 11 Javascript
移动端脚本框架Hammer.js
Dec 15 Javascript
webpack源码之loader机制详解
Apr 06 Javascript
vue axios 简单封装以及思考
Oct 09 Javascript
vue表单数据交互提交演示教程
Nov 13 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
Feb 12 Javascript
vueJs实现DOM加载完之后自动下拉到底部的实例代码
Aug 31 #Javascript
Angular2中监听数据更新的方法
Aug 31 #Javascript
JavaScript使用prototype原型实现的封装继承多态示例
Aug 31 #Javascript
angular2组件中定时刷新并清除定时器的实例讲解
Aug 31 #Javascript
解决Angular4项目部署到服务器上刷新404的问题
Aug 31 #Javascript
Vue.directive使用注意(小结)
Aug 31 #Javascript
解决angular2 获取到的数据无法实时更新的问题
Aug 31 #Javascript
You might like
收听短波不可能有声音清晰的品质吗
2021/03/01 无线电
用php实现的下载css文件中的图片的代码
2010/02/08 PHP
php简单实现无限分类树形列表的方法
2015/03/27 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
php将图片文件转换成二进制输出的方法
2015/06/10 PHP
Yii2超好用的日期和时间组件(值得收藏)
2016/05/05 PHP
PHPCMS2008广告模板SQL注入漏洞修复
2016/10/11 PHP
PHP 年月日的三级联动实例代码
2017/05/24 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
javascript css float属性的特殊写法
2008/11/13 Javascript
jValidate 基于jQuery的表单验证插件
2009/12/12 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
Angular.js回顾ng-app和ng-model使用技巧
2016/04/26 Javascript
vue中使用ueditor富文本编辑器
2018/02/08 Javascript
通过JS运行机制的角度说说作用域
2019/03/12 Javascript
Python3.X 线程中信号量的使用方法示例
2017/07/24 Python
python scipy求解非线性方程的方法(fsolve/root)
2018/11/12 Python
Python3实现爬虫爬取赶集网列表功能【基于request和BeautifulSoup模块】
2018/12/05 Python
python实现Pyecharts实现动态地图(Map、Geo)
2020/03/25 Python
IE支持HTML5的解决方法
2009/10/20 HTML / CSS
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
html5在移动端的屏幕适应问题示例探讨
2014/06/15 HTML / CSS
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
英国泰坦旅游网站:全球陪同游览,邮轮和铁路旅行
2016/11/29 全球购物
全球销量第一生发产品:Viviscal
2017/12/21 全球购物
苏格兰销售女装、男装和童装的连锁店:M&Co
2018/03/16 全球购物
公司同意接收函
2014/01/13 职场文书
奶茶店创业计划书范文
2014/01/17 职场文书
公司开业庆典主持词
2014/03/21 职场文书
2014年评职称工作总结
2014/11/20 职场文书
2015年个人剖析材料范文
2014/12/29 职场文书
个人收入证明范本
2015/06/12 职场文书
车辆管理制度范本
2015/08/05 职场文书
vue elementUI表格控制对应列
2022/04/13 Vue.js
华为HarmonyOS3.0强在哪? 看看鸿蒙3.0这7个小功能
2023/01/09 数码科技