JavaScript:当表单字段无效或为空时,如何显示单独的错误消息

JavaScript:当表单字段无效或为空时,如何显示单独的错误消息,javascript,jquery,Javascript,Jquery,Im尝试在用户提交电子邮件地址无效的表单时显示一条错误消息,但在用户提交空电子邮件字段时显示另一条错误消息 我需要在提交表单时更改电子邮件错误消息 const invalidEmail=document.createElement('span'); invalidEmail.className=“错误”; invalidEmail.id=“invalidEmail”; invalidEmail.textContent=“请输入有效的电子邮件”; ////////////////////////

Im尝试在用户提交电子邮件地址无效的表单时显示一条错误消息,但在用户提交空电子邮件字段时显示另一条错误消息

我需要在提交表单时更改电子邮件错误消息

const invalidEmail=document.createElement('span');
invalidEmail.className=“错误”;
invalidEmail.id=“invalidEmail”;
invalidEmail.textContent=“请输入有效的电子邮件”;
//////////////////////////////////////////////////////
const emptyEmail=document.createElement('span');
emptyEmail.className=“错误”;
emptyEmail.id=“emptyEmail”;
emptyEmail.textContent=“需要电子邮件”;
//////////////////////////////////////////////////////
函数validateEmail(){
//从电子邮件输入中获取值
const email=$(“#mail”).val();
常量regexEmail=/^\w+([-+.]\w+*@\w+([-.]\w+*\.\w+)([-.]\w+*$/;
if(regexEmail.test(电子邮件)){
返回true;
}否则如果(电子邮件==“”){
警报(“输入电子邮件”);
返回false;
}
}
$(“#邮件”).keyup(函数(){
if(emptyEmail()){
//如果用户电子邮件有效,则将输入文本和边框设置为红色
email.style.border=“2px纯绿色”;
emptyEmail.style.display=“无”;
返回true;
}否则{
//如果用户电子邮件无效,请将输入文本和边框设置为红色
电子邮件。之前(清空邮件);
emptyEmail.style.fontSize=“1em”
emptyEmail.style.color=“红色”;
email.style.border=“2px纯红色”;
emptyEmail.style.display=“block”;
返回false;
}
});
$(“#邮件”).keyup(函数(){
if(validateEmail()){
//如果用户电子邮件有效,则将输入文本和边框设置为红色
email.style.border=“2px纯绿色”;
invalidEmail.style.display=“无”;
返回true;
}否则{
//如果用户电子邮件无效,请将输入文本和边框设置为红色
电子邮件。之前(无效邮件);
invalidEmail.style.fontSize=“1em”
invalidEmail.style.color=“红色”;
email.style.border=“2px纯红色”;
invalidEmail.style.display=“block”;
返回false;
}
});

电邮:

以下代码将满足您的需要。我在表单中添加了电子邮件字段,并添加了提交按钮以模拟这种情况:

const invalidEmail=document.createElement('span');
invalidEmail.className=“错误”;
invalidEmail.id=“invalidEmail”;
invalidEmail.textContent=“请输入有效的电子邮件”;
//////////////////////////////////////////////////////
const emptyEmail=document.createElement('span');
emptyEmail.className=“错误”;
emptyEmail.id=“emptyEmail”;
emptyEmail.textContent=“需要电子邮件”;
//////////////////////////////////////////////////////
函数validateEmail(){
//从电子邮件输入中获取值
const email=$(“#mail”).val();
常量regexEmail=/^\w+([-+.]\w+*@\w+([-.]\w+*\.\w+)([-.]\w+*$/;
if(regexEmail.test(电子邮件)){
返回true;
}如果(电子邮件==”){
警报(“输入电子邮件”);
返回false;
}
}
功能isEmptyEmail(obj){
如果(obj.val()='')返回true;
否则返回false;
}
$(“表格”)。提交(功能(e){
让电子邮件=$(“#邮件”);
如果(电子邮件){
e、 预防默认值();
//如果用户电子邮件有效,则将输入文本和边框设置为红色
invalidEmail.style.border=“2px纯绿色”;
invalidEmail.style.display=“无”;
电子邮件。之前(清空邮件);
emptyEmail.style.fontSize=“1em”
emptyEmail.style.color=“红色”;
emptyEmail.style.border=“2px实心红色”;
emptyEmail.style.display=“block”;
返回true;
}如果(!validateEmail()),则为else{
e、 预防默认值();
//如果用户电子邮件有效,则将输入文本和边框设置为红色
emptyEmail.style.border=“2px纯绿色”;
emptyEmail.style.display=“无”;
电子邮件。之前(无效邮件);
invalidEmail.style.fontSize=“1em”
invalidEmail.style.color=“红色”;
invalidEmail.style.border=“2px实心红色”;
invalidEmail.style.display=“block”;
返回true;
}否则{
//如果用户电子邮件无效,请将输入文本和边框设置为红色
invalidEmail.style.border=“2px纯绿色”;
invalidEmail.style.display=“无”;
emptyEmail.style.border=“2px纯绿色”;
emptyEmail.style.display=“无”;
返回false;
}
});

电邮: