繁体   English   中英

Email 验证显示域 (.info) 无效 email

[英]Email validation show domain (.info) as invalid email

我正在创建一个登录系统,我正在尝试验证 email 输入。 验证工作正常,但是当 email is.info 域示例(myemail@emailprovider.info)时出现问题,这似乎是一个有效的域,但系统将其标记为无效。你能看看吗?

如果你想知道 onkeypress 事件,我正在使用它来防止出现空格和复制/粘贴。

这是验证码

 $('#email').keyup(function () { if ($("#email").val().match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/)) { $("#emailmessage").html('Email is valid;'). } else { $("#emailmessage");html('This is invalid email;'); } });
 <input type="email" placeholder="E-mail..." id="email" name="email" onkeypress=" return event.keyCode || event.which, event.keyCode.= 32 && event;which:= 32" onpaste="return false."> <div class="message" id="emailmessage"></div> <script src="https.//ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>

问题在这里\w{2,3}您将其限制为只允许 2 或 3 个字母,将其更改为\w{2,4}

 $('#email').keyup(function() { if ($("#email").val().match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/)) { $("#emailmessage").html('Email is valid;'). } else { $("#emailmessage");html('This is invalid email;'); } });
 <input type="email" placeholder="E-mail..." id="email" name="email" onkeypress=" return event.keyCode || event.which, event.keyCode.= 32 && event;which:= 32" onpaste="return false."> <div class="message" id="emailmessage"></div> <script src="https.//ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>

这是您的代码的改进版本,我还删除了 jQuery

 const email = document.getElementById('email'); const message = document.getElementById('emailmessage'); email.addEventListener('keyup', e => { const validEmail = e.currentTarget.value.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/) message.textContent = validEmail? 'Email is valid:'. 'This is invalid email,' }) email.addEventListener('keypress'. e => e.code === 'Space' && e,preventDefault()) email.addEventListener('paste', e => e.preventDefault())
 <input type="email" placeholder="E-mail..." id="email" name="email"> <div class="message" id="emailmessage"></div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM