2015-11-03 69 views
0

我有一个类似的代码,如下面的注册表单所示。在这个例子中,电子邮件的值是预加载的,因此没有显示错误。但我怎么能避免错误时,有没有预载值,换句话说,如果值是空的,如:angularJS在值为空时避免出现错误消息

$scope.Email = {valor:""}; 

Here是例如:

<!doctype html> 
 
<html lang="en"> 
 

 
<head> 
 
    <meta charset="UTF-8"> 
 
    <title>Example - example-example59-production</title> 
 

 

 
    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-beta.1/angular.min.js"></script> 
 
    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-beta.1/angular-animate.js"></script> 
 

 
</head> 
 

 
<body ng-app="formExample"> 
 
    <script> 
 
    angular.module('formExample', []) 
 
     .controller('FormController', ['$scope', 
 
     function($scope) { 
 
      $scope.Email = { 
 
      valor: "[email protected]" 
 
      }; 
 
     } 
 
     ]); 
 
    </script> 
 
    <style> 
 
    .my-form { 
 
     transition: all linear 0.5s; 
 
     background: transparent; 
 
    } 
 
    .my-form.ng-invalid { 
 
     background: red; 
 
    } 
 
    </style> 
 
    <form name="myForm" ng-controller="FormController"> 
 
    Email: 
 
    <input name="input" ng-model="Email.valor" required class="my-form"> 
 
    <span class="error" ng-show="myForm.input.$error.required">Required!</span> 
 
    <br> 
 
    <code>userType = {{Email.valor}}</code> 
 
    <br> 
 
    <code>myForm.input.$valid = {{myForm.input.$valid}}</code> 
 
    <br> 
 
    <code>myForm.input.$error = {{myForm.input.$error}}</code> 
 
    <br> 
 
    <code>myForm.$valid = {{myForm.$valid}}</code> 
 
    <br> 
 
    <code>myForm.$error.required = {{!!myForm.$error.required}}</code> 
 
    <br> 
 
    </form> 
 
</body> 
 

 
</html>

+0

您是否故意验证电子邮件页面加载出于任何原因?或者是你设计你的代码的方式的副作用? –

+0

哦,我刚刚意识到你从[documentation](https://docs.angularjs.org/api/ng/directive/form)复制了确切的示例......你有什么尝试,哪些不起作用? –

回答

1

改变你的CSS本

input.ng-invalid.ng-dirty { 
     background-color: #FA787E; 
    } 

    input.ng-valid.ng-dirty { 
     background-color: #78FA89; 
    } 

相反更换的

.my-form { 
     transition: all linear 0.5s; 
     background: transparent; 
    } 
    .my-form.ng-invalid { 
     background: red; 
    } 
相关问题