gpt4 book ai didi

javascript - Angular 电子邮件验证空和模式

转载 作者:行者123 更新时间:2023-12-03 02:33:24 25 4
gpt4 key购买 nike

我正在评估电子邮件输入是否为空或者其模式是否不正确。如果是这样,则 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 中,那么它会在第一次检查它正常,但是在提交表单并且用户决定再次打开弹出窗口之后,这些值最初是有效的,并且用户甚至可以发送空电子邮件。因此,为什么我想在用户按下提交按钮时执行的函数中检查它。

最佳答案

也许可以做这样的事情:

if(typeof($rootScope.email) === 'undefined' || !(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test($scope.email))){
$scope.emailError = true;
}

关于javascript - Angular 电子邮件验证空和模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48638908/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com