【发布时间】:2018-02-06 17:18:49
【问题描述】:
我正在评估电子邮件输入是否为空,或者它是否不正确。如果是这样,则 emailError 的值为 true,并且不会执行进一步的代码
if(typeof($rootScope.email) === 'undefined' || /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test($scope.email)){
$scope.emailError = true;
}
它评估空输入,但没有正确检查模式。 我哪里做错了?
编辑: html 部分如下所示:
<input ng-class="{true:'error-bron', false:'nonerror-bron'}[emailError===true]" ng-if="$root.lang ==='en'" type="email" maxlength="40" required class="bron-input" placeholder="Email" ng-model="$root.email"/>
如果所有字段都有效,则它开始工作:
if(!$scope.nameError && !$scope.emailError && !$scope.phoneError){
如果我将模式验证放在 html 中,那么它第一次会检查它,但在提交表单并且用户决定再次打开弹出窗口之后,这些值最初是有效的,用户甚至可以发送一个空的电子邮件。因此,为什么我想在用户按下提交按钮时执行的这个函数中检查它。
【问题讨论】:
标签: javascript angularjs