最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Angularjs - highlight field when field not valid - Stack Overflow

programmeradmin2浏览0评论

I'm new to Angular and would like to know how I can highlight form fields when the validation fails.

I have created a fiddle to illustrate what I'm after.

Any help is appreciated.

     <p>
        <label for="name">User:</label>
        <input type="text" name="name" ng-model="name"
               required  ng-minlength="5" ng-maxlength="32">
    <span ng-show="register.name.$error.required" class="err">
        Required</span>
    <span ng-show="register.name.$error.minlength" class="err">
        Minimum 5 characters</span>
    <span ng-show="register.name.$error.maxlength" class="err">
        Maximum 32 characters</span>
    </p>

I'm new to Angular and would like to know how I can highlight form fields when the validation fails.

I have created a fiddle to illustrate what I'm after.

Any help is appreciated.

     <p>
        <label for="name">User:</label>
        <input type="text" name="name" ng-model="name"
               required  ng-minlength="5" ng-maxlength="32">
    <span ng-show="register.name.$error.required" class="err">
        Required</span>
    <span ng-show="register.name.$error.minlength" class="err">
        Minimum 5 characters</span>
    <span ng-show="register.name.$error.maxlength" class="err">
        Maximum 32 characters</span>
    </p>
Share Improve this question asked Oct 19, 2013 at 4:03 user686483user686483 1,5066 gold badges18 silver badges29 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 15

In your case, you could try ng-class:

<input type="text" ng-class="{highlight:register.name.$error.required || register.name.$error.minlength || register.name.$error.maxlength}" name="name" ng-model="name"
                   required  ng-minlength="5" ng-maxlength="32">

DEMO

Another solution is to style on these classes:

ng-valid
ng-invalid
ng-pristine
ng-dirty

Angular automatically toggles these classes based on current validation status. Below is the demo to hightlight invalid inputs:

input.ng-invalid { 
    background:#F84072;
    border: 2px red solid;
}

DEMO

发布评论

评论列表(0)

  1. 暂无评论