AngularJS表单验证【失去焦点再提示】
2017-04-12 00:00
495 查看
使用angular自带的表单验证时,页面加载的时候就显示出来了,用户体验不太好,我们的需求是,只有当输入框失去了焦点的时候才显示提示内容
解决办法:利用了angularjs表单验证的错误对象 myForm.input.$error,给这个对象添加一个判断当前输入框是否失去焦点的属性 myForm.input.$error.blur。然后利用input的事件ng-focus,ng-blur来动态改变这个值。
注意:因为一开始 myForm.input.$error.blur 没有给定初始值,所以肯定是false
解决办法:利用了angularjs表单验证的错误对象 myForm.input.$error,给这个对象添加一个判断当前输入框是否失去焦点的属性 myForm.input.$error.blur。然后利用input的事件ng-focus,ng-blur来动态改变这个值。
注意:因为一开始 myForm.input.$error.blur 没有给定初始值,所以肯定是false
<html> <head> <title></title> <--引用自己的js--> <script src="js/angular.min.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> angular.module('app', []) </script> </head> <body ng-app="app"> <form name="myForm" > <div class=""> 用户名 <input name="input" ng-model="userType" ng-blur="myForm.input.$error.focus=false" ng-focus="myForm.input.$error.focus=true" required> <span ng-show="myForm.input.$error.required && !myForm.input.$error.focus">必填项</span><br> </div> <div class=""> 密码: <input name="psd" ng-model="psd" ng-blur="myForm.psd.$error.blur=true" ng-focus="myForm.psd.$error.blur=false" required> <span ng-show="myForm.psd.$error.required &&myForm.psd.$error.blur">必填项</span><br> </div> </form> </body> </html>
相关文章推荐
- AngularJs获取焦点与失去焦点时的表单验证
- AngularJs获取焦点与失去焦点时的表单验证
- AngularJS实现的获取焦点及失去焦点时的表单验证功能示例
- Angualrjs 表单的两种验证(失去焦点验证和点击提交验证)
- Angualrjs 表单验证的两种方式(失去焦点验证和点击提交验证)
- esyuitextbox失去焦点验证并提示
- 表单验证(失去焦点)
- jQuery表单获取和失去焦点输入框提示效果的实例代码
- 表单验证用onblur(失去焦点事件)实现
- AngularJs表单验证【点击提交按钮时再提示】
- jQuery表单获取和失去焦点输入框提示效果的实例代码
- Win8 在TextBox中设置提示信息,当TextBox获得焦点时消失,失去时验证
- ui.popover 一个轻量级AngularJS表单验证提示解决方案
- angularjs 表单验证 文本框失焦点验证
- jQuery表单获取和失去焦点输入框提示效果
- HTML简单的失去焦点表单验证
- JQUERY失去焦点时验证多个表单
- 表单验证<AngularJs> form valid
- AngularJs表单验证
- AngularJS表单验证(上)