Angularjs之ngModel中的值验证绑定方法


Posted in Javascript onSeptember 13, 2018

众所周知,在Angular中ngModel为动态双向绑定,存在两种方式。

例如,

方式一:

在html中,

<input type="text" ng-model="searchText" />
<button ng-click="check(searchText)">Check!</button>
{{ searchText }}

在controller中

$scope.check = function (searchText) {
 console.log(searchText);
}

方式二:

引用stackoverflow的一句话,

“If you use ng-model, you have to have a dot in there.” 
Make your model point to an object.property and you'll be good to go.

在html中,

<input ng-model="formData.searchText"/>
<button ng-click="check()">Check!</button>

在controller中,

$scope.formData = {};
$scope.check = function () {
 console.log($scope.formData.searchText.$modelValue);
}

但是我们常常会对ngModel当中的值进行验证,例如,

<input type="password" pattern="[0-9]*" placeholder="请输入6位新密码" ng-model="password.new_password" ng-blur="validateLength()">
<input type="password" ng-model="password.new_password" ng-keyup="compare(password)" name="repassword" ng-pattern="/^[0-9]{1,6}$/" />

发现ngModel当中的password.new_password不能实时绑定到controller中,原因为ngModel的值并没有符合pattern的规则。若符合规则,则正常绑定传递。

以上这篇Angularjs之ngModel中的值验证绑定方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript面象对象设计
Apr 28 Javascript
location.href语句与火狐不兼容的问题
Jul 04 Javascript
jQuery实现的Email中的收件人效果(按del键删除)
Mar 20 Javascript
在标题栏显示新消息提示,很多公司项目中用到这个方法
Nov 04 Javascript
Javascript农历与公历相互转换的简单实例
Oct 09 Javascript
简单模拟node.js中require的加载机制
Oct 27 Javascript
html+javascript+bootstrap实现层级多选框全层全选和多选功能
Mar 09 Javascript
vue.js获取数据库数据实例代码
May 26 Javascript
JS基于正则实现数字千分位用逗号分隔的方法
Jun 16 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
vue开发拖拽进度条滑动组件
Sep 21 Javascript
vue tab滚动到一定高度,固定在顶部,点击tab切换不同的内容操作
Jul 22 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
Sep 13 #Javascript
解决angular2在双向数据绑定时[(ngModel)]无法使用的问题
Sep 13 #Javascript
mpvue中使用flyjs全局拦截的实现代码
Sep 13 #Javascript
AngularJS修改model值时,显示内容不变的实例
Sep 13 #Javascript
在vue中使用vue-echarts-v3的实例代码
Sep 13 #Javascript
vue的全局变量和全局拦截请求器的示例代码
Sep 13 #Javascript
ios设备中angularjs无法改变页面title的解决方法
Sep 13 #Javascript
You might like
php环境下利用session防止页面重复刷新的具体实现
2014/01/09 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
PHP长网址与短网址的实现方法
2017/10/13 PHP
Laravel框架实现修改登录和注册接口数据返回格式的方法
2018/08/17 PHP
文本框根据输入内容自适应高度的代码
2011/10/24 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
js计算两个时间之间天数差的实例代码
2013/11/19 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
在myeclipse中如何加入jquery代码提示功能
2014/06/03 Javascript
整理Javascript数组学习笔记
2015/11/29 Javascript
jQuery与JS加载事件用法分析
2016/09/04 Javascript
jQuery用户头像裁剪插件cropbox.js使用详解
2017/06/07 jQuery
利用Javascript实现一套自定义事件机制
2017/12/14 Javascript
vue.js轮播图组件使用方法详解
2018/07/03 Javascript
解决vue 绑定对象内点击事件失效问题
2018/09/05 Javascript
webpack打包优化的几个方法总结
2020/02/10 Javascript
深入理解Python中range和xrange的区别
2017/11/26 Python
Python操作Redis之设置key的过期时间实例代码
2018/01/25 Python
python使用numpy读取、保存txt数据的实例
2018/10/14 Python
pycharm远程开发项目的实现步骤
2019/01/20 Python
python属于跨平台语言码
2020/06/09 Python
Python requests及aiohttp速度对比代码实例
2020/07/16 Python
如何基于Python实现word文档重新排版
2020/09/29 Python
详解基于python的全局与局部序列比对的实现(DNA)
2020/10/07 Python
Python QT组件库qtwidgets的使用
2020/11/02 Python
土耳其国际性时尚购物网站:Modanisa
2018/01/19 全球购物
世界上最具创新性的增强型知名运动品牌:Proviz
2018/04/03 全球购物
Java TransactionAPI (JTA) 主要包含几部分
2012/12/07 面试题
高中生的学习总结自我鉴定
2013/10/26 职场文书
《蒙娜丽莎之约》教学反思
2014/02/27 职场文书
助人为乐模范事迹材料
2014/06/02 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
酒店财务部岗位职责
2015/04/14 职场文书
水知道答案观后感
2015/06/08 职场文书
TV动画《八十龟酱观察日记》第四季宣传PV公布
2022/04/06 日漫