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 相关文章推荐
jQuery Ajax使用 全解析
Dec 15 Javascript
JavaScript 盒模型 尺寸深入理解
Dec 31 Javascript
jQuery学习笔记(3)--用jquery(插件)实现多选项卡功能
Apr 08 Javascript
解析offsetHeight,clientHeight,scrollHeight之间的区别
Nov 20 Javascript
我的Node.js学习之路(四)--单元测试
Jul 06 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
Jun 10 Javascript
jQuery的extend方法【三种】
Dec 14 Javascript
详解如何使用webpack打包Vue工程
May 27 Javascript
JavaScript中常用的简洁高级技巧总结
Mar 10 Javascript
JS原型与继承操作示例
May 09 Javascript
Vue+abp微信扫码登录的实现代码示例
Jan 06 Javascript
js+css3实现简单时钟特效
Sep 13 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
剧场版动画《PSYCHO-PASS 3 FIRST INSPECTOR》3月27日日本上映!
2020/03/06 日漫
overlord人气高涨,却被菲利普频繁举报,第四季很难在国内上映
2020/05/06 日漫
CodeIgniter自定义控制器MY_Controller用法分析
2016/01/20 PHP
php成功操作redis cluster集群的实例教程
2019/01/13 PHP
Laravel配置全局公共函数的方法步骤
2019/05/09 PHP
js 动态添加标签(新增一行,其实很简单,就是几个函数的应用)
2009/03/26 Javascript
Mootools 1.2教程 排序类和方法简介
2009/09/15 Javascript
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
2010/09/19 Javascript
js切换div css注意的细节
2012/12/10 Javascript
设为首页和收藏的Javascript代码(亲测兼容IE,Firefox,chrome等浏览器)
2013/11/18 Javascript
浅谈JavaScript 函数参数传递到底是值传递还是引用传递
2016/08/23 Javascript
jQuery事件绑定方法学习总结(推荐)
2016/11/21 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
2016/12/25 Javascript
AngularJS自定义指令详解(有分页插件代码)
2017/06/12 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
利用js将ajax获取到的后台数据动态加载至网页中的方法
2018/08/08 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
微信小程序实现判断是分享到群还是个人功能示例
2019/05/03 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
2019/04/11 Python
基于多进程中APScheduler重复运行的解决方法
2019/07/22 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
2020/03/13 Python
如何使用Python处理HDF格式数据及可视化问题
2020/06/24 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
描述Cookie和Session的作用,区别和各自的应用范围,Session工作原理
2015/03/25 面试题
你经历的项目中的SCM配置项主要有哪些?什么是配置项?
2013/11/04 面试题
全神贯注教学反思
2014/02/03 职场文书
事业单位考察材料范文
2014/12/25 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
党员转正申请报告
2015/05/15 职场文书
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
浅谈Redis的几个过期策略
2021/05/27 Redis
如何更改Win11声音输出设备?Win11声音输出设备四种更改方法
2022/04/08 数码科技
阿里云服务器Ubuntu 20.04上安装Odoo 15
2022/05/20 Servers