AngularJS 输入验证详解及实例代码


Posted in Javascript onJuly 28, 2016

AngularJS 输入验证

AngularJS 表单和控件可以验证输入的数据。

输入验证

在前面的几个章节中,你已经学到关于 AngularJS 表单和控件的知识。

AngularJS 表单和控件可以提供验证功能,并对用户输入的非法数据进行警告。

注意: 客户端的验证不能确保用户输入数据的安全,所以服务端的数据验证也是必须的。

应用代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body>

<h2>验证实例</h2>

<form ng-app="myApp" ng-controller="validateCtrl" 
name="myForm" novalidate>

<p>用户名:<br>
<input type="text" name="user" ng-model="user" required>
<span style="color:red" ng-show="myForm.user.$dirty && myForm.user.$invalid">
<span ng-show="myForm.user.$error.required">用户名是必须的。</span>
</span>
</p>

<p>邮箱:<br>
<input type="email" name="email" ng-model="email" required>
<span style="color:red" ng-show="myForm.email.$dirty && myForm.email.$invalid">
<span ng-show="myForm.email.$error.required">邮箱是必须的。</span>
<span ng-show="myForm.email.$error.email">非法的邮箱地址。</span>
</span>
</p>

<p>
<input type="submit"
ng-disabled="myForm.user.$dirty && myForm.user.$invalid || 
myForm.email.$dirty && myForm.email.$invalid">
</p>

</form>

<script>
var app = angular.module('myApp', []);
app.controller('validateCtrl', function($scope) {
 $scope.user = 'John Doe';
 $scope.email = 'john.doe@gmail.com';
});
</script>

</body>
</html>

运行结果:

 验证实例

用户名:

邮箱:

注意: HTML 表单属性 novalidate 用于禁用浏览器默认的验证。

实例解析

AngularJS ng-model 指令用于绑定输入元素到模型中。

模型对象有两个属性: user email

我们使用了 ng-show指令, color:red 在邮件是 $dirty 或 $invalid 才显示。

 

属性 描述
$dirty 表单有填写记录
$valid 字段内容合法的
$invalid 字段内容是非法的
$pristine 表单没有填写记录

 以上就是对AngularJS 输入验证的资料整理,后续继续补充,希望能帮助学习的同学。

Javascript 相关文章推荐
Mootools 1.2 手风琴(Accordion)教程
Sep 15 Javascript
自动设置iframe大小的jQuery代码
Sep 11 Javascript
jquery配合css简单实现返回顶部效果
Sep 30 Javascript
jquery attr方法获取input的checked属性问题
May 26 Javascript
JavaScript不使用prototype和new实现继承机制
Dec 29 Javascript
Underscore.js常用方法总结
Feb 28 Javascript
通过原生JS实现为元素添加事件的方法
Nov 23 Javascript
JS交互点击WKWebView中的图片实现预览效果
Jan 05 Javascript
Vue父组件调用子组件事件方法
Feb 23 Javascript
全站最详细的Vuex教程
Apr 13 Javascript
解决VUE双向绑定失效的问题
Oct 29 Javascript
使用compose函数优化代码提高可读性及扩展性
Jun 16 Javascript
jquery实用技巧之输入框提示语句
Jul 28 #Javascript
jQuery stop()用法实例详解
Jul 28 #Javascript
AngularJS中的表单简单入门
Jul 28 #Javascript
jQuery插件Validation快速完成表单验证的方式
Jul 28 #Javascript
浅谈JS正则表达式的RegExp对象和括号的使用
Jul 28 #Javascript
AngularJS 模块详解及简单实例
Jul 28 #Javascript
jQuery制作网页版选项卡
Jul 28 #Javascript
You might like
PHP写入WRITE编码为UTF8的文件的实现代码
2008/07/07 PHP
php网上商城购物车设计代码分享
2012/02/15 PHP
通过PHP的内置函数,通过DES算法对数据加密和解密
2012/06/21 PHP
如何使用php判断所处服务器操作系统的类型
2013/06/20 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
PHP+jQuery+Ajax实现用户登录与退出
2015/04/27 PHP
PHP实现查询两个数组中不同元素的方法
2016/02/23 PHP
CI框架常用方法小结
2016/05/17 PHP
jquery键盘事件介绍
2011/01/31 Javascript
用JavaScript仿PS里的羽化效果代码
2011/12/20 Javascript
js模拟滚动条(横向竖向)
2013/02/22 Javascript
对Jquery中的ajax再封装,简化操作示例
2014/02/12 Javascript
JavaScript实现MIPS乘法模拟的方法
2015/04/17 Javascript
第十章之巨幕页头缩略图与警告框组件
2016/04/25 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
mui上拉加载功能实例详解
2017/04/13 Javascript
webstorm添加vue.js支持的方法教程
2017/07/05 Javascript
vue服务端渲染的实例代码
2017/08/28 Javascript
原生js实现简单的模态框示例
2017/09/08 Javascript
实现div滚动条默认最底部以及默认最右边的示例代码
2017/11/15 Javascript
解决vue中post方式提交数据后台无法接收的问题
2018/08/11 Javascript
微信小程序实现选项卡效果
2018/11/06 Javascript
JQuery属性操作与循环用法示例
2019/05/15 jQuery
Openlayers实现测量功能
2020/09/25 Javascript
Python 通过URL打开图片实例详解
2017/06/01 Python
python距离测量的方法
2018/03/06 Python
使用python画社交网络图实例代码
2019/07/10 Python
详解python itertools功能
2020/02/07 Python
小学生演讲稿
2014/01/12 职场文书
党员公开承诺书
2014/03/25 职场文书
祖国在我心中演讲稿500字
2014/05/04 职场文书
2014社会治安综合治理工作总结
2014/12/04 职场文书
实习单位指导教师评语
2014/12/30 职场文书
2015年音乐教师个人工作总结
2015/05/20 职场文书
postgresql使用filter进行多维度聚合的解决方法
2021/07/16 PostgreSQL
剖析后OpLog订阅MongoDB的数据变更就没那么难了
2022/02/24 MongoDB