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 loading加载效果实现代码
Nov 24 Javascript
Array.prototype.slice 使用扩展
Jun 09 Javascript
jQuery 表单验证扩展代码(一)
Oct 11 Javascript
D3.js实现文本的换行详解
Oct 14 Javascript
解析微信JS-SDK配置授权,实现分享接口
Dec 09 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
Aug 08 Javascript
解决百度Echarts图表坐标轴越界的方法
Oct 17 Javascript
利用Dectorator分模块存储Vuex状态的实现
Feb 05 Javascript
JavaScript展开操作符(Spread operator)详解
Jul 20 Javascript
nodemon实现Typescript项目热更新的示例代码
Nov 19 Javascript
从零使用TypeScript开发项目打包发布到npm
Feb 14 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
Mar 09 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/03 冲泡冲煮
学习php设计模式 php实现模板方法模式
2015/12/08 PHP
详解PHP中的null合并运算符
2015/12/30 PHP
php数组冒泡排序算法实例
2016/05/06 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
Javascript之文件操作
2007/03/07 Javascript
实现局部遮罩与关闭原理及代码
2013/02/04 Javascript
javascript一元操作符(递增、递减)使用示例
2013/08/07 Javascript
浅谈jQuery事件绑定原理
2015/01/02 Javascript
JavaScript内存管理介绍
2015/03/13 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
一个php+js实时显示时间问题
2015/10/12 Javascript
WEB前端实现裁剪上传图片功能
2016/10/17 Javascript
浅谈angularjs $http提交数据探索
2017/01/20 Javascript
ES6新特性二:Iterator(遍历器)和for-of循环详解
2017/04/20 Javascript
使用yeoman构建angular应用的方法
2017/08/14 Javascript
Javascript前端下载后台传来的文件流代码实例
2020/08/18 Javascript
原生JS生成指定位数的验证码
2020/10/28 Javascript
[02:32]【DOTA2亚洲邀请赛】iceice,梦开始的地方
2017/03/13 DOTA
python实现的防DDoS脚本
2011/02/08 Python
Python去掉字符串中空格的方法
2014/03/11 Python
Python中的ctime()方法使用教程
2015/05/22 Python
python 实现将字典dict、列表list中的中文正常显示方法
2018/07/06 Python
Python登录系统界面实现详解
2019/06/25 Python
css3截图_动力节点Java学院整理
2017/07/11 HTML / CSS
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
大学生咖啡店创业计划书
2014/01/21 职场文书
教师产假请假条范文
2014/04/10 职场文书
乡镇2014法制宣传日活动总结
2014/11/01 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
死亡诗社观后感
2015/06/05 职场文书
跳高加油稿
2015/07/21 职场文书
2016年大学生暑期社会实践方案
2015/11/26 职场文书
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript
世界无敌的ICOM IC-R9500宽频接收机
2022/03/25 无线电