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 相关文章推荐
使用jquery.upload.js实现异步上传示例代码
Jul 29 Javascript
JS实现FLASH幻灯片图片切换效果的方法
Mar 04 Javascript
jQuery使用post方法提交数据实例
Mar 25 Javascript
javascript 判断是否是微信浏览器的方法
Oct 09 Javascript
jQuery中的deferred使用方法
Mar 27 jQuery
JS获取鼠标位置距浏览器窗口距离的方法示例
Apr 11 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
Vue源码解析之数组变异的实现
Dec 04 Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
Nov 04 Javascript
一篇超完整的Vue新手入门指导教程
Nov 18 Vue.js
一篇文章学会Vue中间件管道
Jun 20 Vue.js
Vue-Element-Admin集成自己的接口实现登录跳转
Jun 23 Vue.js
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 上传文件大小限制
2009/07/05 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
2016/07/14 PHP
php实现的AES加密类定义与用法示例
2018/01/29 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
PHP连接MySQL数据库并以json格式输出
2018/05/21 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
js使用DOM设置单选按钮、复选框及下拉菜单的方法
2015/01/20 Javascript
js如何准确获取当前页面url网址信息
2020/09/13 Javascript
JavaScript数据结构中串的表示与应用实例
2017/04/12 Javascript
利用SpringMVC过滤器解决vue跨域请求的问题
2018/02/10 Javascript
详解Node 定时器
2018/02/26 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
2018/03/06 Javascript
详解webpack 入门与解析
2018/04/09 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
[03:49]显微镜下的DOTA2第十五期—VG登基之路完美团
2014/06/24 DOTA
Python二分法搜索算法实例分析
2015/05/11 Python
Python+微信接口实现运维报警
2016/08/27 Python
Scrapy爬虫实例讲解_校花网
2017/10/23 Python
浅谈python数据类型及类型转换
2017/12/18 Python
Python基于分析Ajax请求实现抓取今日头条街拍图集功能示例
2018/07/19 Python
python实现画五角星和螺旋线的示例
2019/01/20 Python
django 消息框架 message使用详解
2019/07/22 Python
Python Web框架之Django框架cookie和session用法分析
2019/08/16 Python
pytorch 利用lstm做mnist手写数字识别分类的实例
2020/01/10 Python
Tensorflow矩阵运算实例(矩阵相乘,点乘,行/列累加)
2020/02/05 Python
Python任务调度模块APScheduler使用
2020/04/15 Python
python在地图上画比例的实例详解
2020/11/13 Python
水果连锁超市创业计划书
2014/01/24 职场文书
个人对照检查材料
2014/02/12 职场文书
庆七一活动总结
2014/08/27 职场文书
房屋认购协议书
2015/01/29 职场文书
2015婚礼主持词开场白
2015/05/28 职场文书
前端学习——JavaScript原生实现购物车案例
2021/03/31 Javascript
mysql部分操作
2021/04/05 MySQL
python opencv将多个图放在一个窗口的实例详解
2022/02/28 Python
Python中非常使用的6种基本变量的操作与技巧
2022/03/22 Python