AngularJS实现表单验证功能


Posted in Javascript onJanuary 09, 2017

AngularJS表单验证功能实现代码:

ng-model的作用:

1.ng-model 指令可以将输入域的值与 AngularJS 创建的变量绑定
2.双向绑定,在修改输入域的值时, AngularJS 属性的值也将修改
3.数据校验
4.ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error)
5.ng-model 指令基于它们的状态为 HTML 元素提供了 CSS 类

css内容:

/*angularJS会根据表单的状态进行添加或者删除对应的样式*/
/*定义输入框不合法的默认背景颜色*/
input.ng-invalid {
  background-color: grey;
}

/*输入框数据合法的默认背景颜色*/
input.ng-valid {
  background-color: yellow;
}

HTML正文:

<body ng-app="myApp">
<div ng-controller="myCtrl">
 <!-- 将表单输入域的值与angularJS的变量绑定 -->
  名字: <input ng-model="name"><br>
 angularJS双向绑定:{{name}}
</div>

<hr>
<p>表单输入信息校验</p>
<form name="myForm01">
  Email:<input type="email" name="myEmail01" ng-model="text">
  <!-- ng-show:类似avalon的ms-if的用法,如果校验不通过则返回true,显示提示内容,数据校验不太精确 -->
  <span ng-show="myForm01.myEmail01.$error.email" style="color: red">邮箱地址不合法!</span><br>
    数据校验结果:<span>{{myForm01.myEmail01.$error.email}}</span>
</form>

<hr>
<p>ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error)</p>
<form name="myForm02" ng-init="myText='test@qq.com'">
 Email:<input type="email" name="myEmail02" ng-model="myText" required></p> <!-- required标识不能为空,否则不合法 -->
 <h5>状态</h5>
  <!-- 通过识别表单的email控件按照默认的规则进行校验 -->
  数据输入合法:{{myForm02.myEmail02.$valid}}<br> 
  数据改变:{{myForm02.myEmail02.$dirty}}<br>
  触屏点击: {{myForm02.myEmail02.$touched}}
</form>

<hr>
<p>ng-model 指令基于它们的状态为 HTML 元素提供了 CSS 类</p>
<form name="myForm03">
  输入你的名字:<input name="myName" ng-model="text" required>
</form>

效果:

AngularJS实现表单验证功能

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery index()方法使用代码
Jun 02 Javascript
禁止页面刷新让F5快捷键及右键都无效
Jan 22 Javascript
基于jQuery实现表单提交验证
Nov 24 Javascript
JS自定义对象实现Java中Map对象功能的方法
Jan 20 Javascript
AngularJS手动表单验证
Feb 01 Javascript
AngularJS 指令的交互详解及实例代码
Sep 14 Javascript
jQuery实现表格与ckeckbox的全选与单选功能
Nov 24 Javascript
ES6通过babel转码使用webpack使用import关键字
Dec 13 Javascript
jQuery插件ContextMenu自定义图标
Mar 15 Javascript
详解vue项目打包后通过百度的BAE发布到网上的流程
Mar 05 Javascript
Web安全之XSS攻击与防御小结
Dec 13 Javascript
解决layui弹出层layer的area过大被遮挡的问题
Sep 21 Javascript
AngularJS表单基本操作
Jan 09 #Javascript
AngularJS Controller作用域
Jan 09 #Javascript
详解JavaScript树结构
Jan 09 #Javascript
angular分页指令操作
Jan 09 #Javascript
jquery.zclip轻量级复制失效问题
Jan 08 #Javascript
JavaScript &amp; jQuery完美判断图片是否加载完毕
Jan 08 #Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
Jan 08 #Javascript
You might like
PHP的魔术常量__METHOD__简介
2014/07/08 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
php类常量用法实例分析
2015/07/09 PHP
教你php如何实现验证码
2016/01/20 PHP
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
PHP实现将base64编码字符串转换成图片示例
2018/06/22 PHP
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
URL地址中的#符号使用说明
2011/02/12 Javascript
js 实现图片预加载(js操作 Image对象属性complete ,事件onload 异步加载图片)
2011/03/25 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
把Node.js程序加入服务实现随机启动
2015/06/25 Javascript
js控制元素显示在屏幕固定位置及监听屏幕高度变化的方法
2015/08/11 Javascript
原生JS实现美图瀑布流布局赏析
2015/09/07 Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
2016/07/19 Javascript
jQuery事件用法详解
2016/10/06 Javascript
用JS实现选项卡
2020/03/23 Javascript
jquery实现简单自动轮播图效果
2020/07/29 jQuery
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
[59:59]EG vs IG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[35:34]Liquid vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[49:35]KG vs SECRET 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
pytyon 带有重复的全排列
2013/08/13 Python
python获取豆瓣电影简介代码分享
2014/01/16 Python
全面解析Python的While循环语句的使用方法
2015/10/13 Python
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
Pycharm保存不能自动同步到远程服务器的解决方法
2019/06/27 Python
python调用webservice接口的实现
2019/07/12 Python
python中关于数据类型的学习笔记
2020/07/19 Python
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
热能动力工程毕业生自荐信
2013/11/07 职场文书
学校后勤岗位职责
2014/02/19 职场文书
高中生学习计划书
2014/09/15 职场文书
检讨书模板
2015/01/29 职场文书
vue 实现上传组件
2021/05/31 Vue.js
Python中如何处理常见报错
2022/01/18 Python