angularjs 表单校验指令_AngularJS中的表单验证机制

AngularJS客户端表单验证提供丰富的内置指令,如required、pattern等,支持HTML5表单域,并允许自定义验证。通过设置novalidate属性避免HTML5默认验证。表单状态可通过ng-valid、ng-invalid等CSS类进行反馈,可利用$pristine、$dirty等属性进行交互控制。在实际应用中,可以通过ng-disabled结合表单验证状态控制提交按钮的启用。
摘要由CSDN通过智能技术生成

客户端表单验证是AngularJS里面最酷的功能之一。 AngularJS表单验证可以让你从一开始就写出一个具有交互性和可响应的现代化HTML5表单。

angularJs实现了大多数的HTML5表单域(input,text,number,url,email,radio,checkbox),并添加了自己的一些验证指令(required,pattern ,minlength,maxlength,min,max)。

常见的有:

必填

长度限制

正则匹配

Email

数字

URL

自定义验证

AngularJS可以很容易的使用指令来添加自定义验证。

几点注意:为了屏蔽html5中默认的验证效果,我们可以在form上引用novalidate属性。

Angular在对表单进行自动校验的时候会校验Model上的属性,如果不设置ng-model,校验机制就无法校验这个输入项

Angular为表单内置了4中CSS样式。ng-valid      通过验证的表单

ng-invalid    未通过验证的表单

ng-pristine   未修改过表单

ng-dirty      修改过表单

验证表单状态property$pristine   未修改过表单

$dirty      修改过表单

$valid      通过验证的表单

$invalid    未通过验证的表单

$error      验证失败

使用方法:

formName.inputFieldName.property

请填写正确的Email

表单验证实践

让我们在AngularJs的模板上添加一个表单

Email address

Submit

该表单用于验证Email地址是否正确,提交按钮添加了ng-disabled="!form.$valid" ,表示若未通过验证则禁用该按钮。如下:

右击查看源码可以看到angularJs自动为表单元素添加了一些class,并可根据用户的输入值自动改变该表单的class,我们可以给这些class加上样式来提醒用户是否通过验证。

我们还为提交按钮绑定了一个点击事件,控制器里的代码如下:

当我们输入正确的Email地址后该表单通过验证,提交按钮自动会从禁用状态变为可用状态。

然后我们点击提交:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>