angularjs – 确定表单输入是否具有焦点

我在AngularJS中进行验证,如果有3种类型的错误,我将显示一个div。

对于所需的,只有当页面以空值提交时,才想显示错误消息

<div class="error" data-ng-show="submitted && mainForm.email.$error.required" />

对于正则表达式验证,我希望它标记实时的认行为。

<div class="error" data-ng-show="mainForm.email.$error.pattern" />

我面临的问题是最小长度。我不想在打字时显示它。这是令人讨厌的,因为他们还没有完成打字。我不想在提交中显示它,我认为这是太晚了。当我们不再重视元素时,我想展示它。

如果//mainForm.email.$focus存在,我可以简单地做到这一点

<div class="error" data-ng-show="mainForm.email.$error.minlength && 
!mainForm.email.$focus"/>

任何人都知道有什么办法做这种检查还是任何非抽出的选择?

谢谢!

是的,它确实
您可以使用ngFocus和ngBlur来实现此目的

这里是代码

<form name="mainForm">
    <span ng-show="mainForm.email.$error.pattern && !focus">error here</span>
    <input name="email" ng-pattern="..." ng-focus="focus=true" ng-blur="focus=false" type="text" />
</form>

ngFocus和ngBlur采取表达,ngShow显示真实评估

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...