gpt4 book ai didi

javascript - 电子邮件验证仅在输入电子邮件但不是有效电子邮件时显示消息

转载 作者:行者123 更新时间:2023-12-03 06:52:07 28 4
gpt4 key购买 nike

我想仅在输入电子邮件地址但无效时显示电子邮件地址无效的消息。如果没有输入任何值,我不想显示消息 - 我只是将输入边框设为红色。

我尝试了这个,但即使字段为空它也会显示消息:

function validateEmail($email) {
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
return emailReg.test( $email );
}
if($(element).hasClass('email')) {
if( !validateEmail($('.email'))) {
$('<span>Please enter a valid email address</span>').insertAfter($(element));
}
}

我还尝试使用 jQuery 验证插件,但在这种情况下,它根本不显示电子邮件错误:

var emails = ['email'];
for(var i=0;i< emails.length;i++) {
var email = emails[i];
rules[email] = {};
rules[email].email = true;
rules[email].required = true;
msgs[email] = {
required:'',
email : "Please enter a valid email address",
}
}

var validateObj = {}
validateObj["rules"] = rules;
validateObj["messages"] = msgs;
validateObj["onkeyup"] = function(element) { $(element).valid();};
validateObj["success"] = function(element) {};
validateObj["submitHandler"] = function (form) {
form.submit();
}
$("#form").validate(validateObj);

最佳答案

我真的觉得我正在帮助那些没有尝试自己做这件事的人......

您可以使用($(element).val())来测试您的输入是否为空。

要让这个工作正常,只需声明一个 empty-email 类来为边框着色

if($(element).hasClass('email')) {
if($(element).val()){
if(!validateEmail($(element))) {
$('<span>').text('Please enter a valid email address').insertAfter($(element));
}
}else{
$(element).addClass('empty-email');
}
}

关于javascript - 电子邮件验证仅在输入电子邮件但不是有效电子邮件时显示消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37447479/

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