Javascript:验证警报

时间:2014-01-03 15:22:05

标签: javascript email alert

我需要做的是以下内容:

  1. 如果nameemail为空,则提醒'空字段'
  2. 如果email不包含@
  3. ,请提醒“错误的电子邮件”
  4. 如果nameemail都填写正确,则提示“成功”

    function test10(email, name){
    
    if(email=="") {
        alert("empty field");}
    
    else if(email.indexOf("@")<0){
        alert("bad email");}
    if(name=="") {
        alert("empty field");}
    
    }
    
  5. 这是我到目前为止所提出的,我希望尽可能简单。现在,当两者都被填写时,我将如何以同样的方式说出“成功”?我需要纯粹在javascript中完成。

    可能值得一提的是,我对javascript很新,所以如果你觉得这很愚蠢,请继续侮辱我,我只是想在这里学习。

4 个答案:

答案 0 :(得分:4)

试试这个:

function test10(email, name){
    // The || is a boolean "OR" , so if (email equals "") OR (name equals "")
    //      then alert the failure reason.
    if(email=="" || name == "") {
        alert("empty field");
        return false;
    }
    if(email.indexOf("@") == -1){
        alert("bad email");
        return false;
    }
    //Conditions are met.
    alert("Succes!");
    return true;
}

这与您指定的完全一样。

答案 1 :(得分:1)

要么在函数末尾放置一个最后的else子句并从那里提醒成功消息,要么每当遇到错误就可以从函数返回,确保在遇到错误时停止该函数继续运行输入无效。然后,您可以在功能结束时发出警告,表示成功,因为您仍然无法达到这一点,因为输入中仍然存在错误。

这样的事情:

function test10(email, name){

    if (email === "" || name === "") {
        alert("empty field");
        return false;
    }
    if(email.indexOf("@")<0){
        alert("bad email");
        return false;
    }

    // If we get here, the input is all good!
    alert("success");
    return true;
}

像这样,您只会一次提醒用户一个错误,给她时间来修复该错误,而不是在没有满足您的规则的情况下互相抛出三个警报。

从函数返回false / true有一个好处,即如果输入无效,该函数可用于停止表单提交。

替代验证方法

使用HTML5,引入了数据表单验证,使用requiredpattern等属性提供验证的本机选项。如果您使用新的<input type="email">

,浏览器还可以对电子邮件输入执行验证 有关这方面的

More extensive reading可在MDN上找到。

答案 2 :(得分:1)

试试这个

   function test10(email, name){

if(email=="" || name=="") {
    alert("empty field");}

else if(email.indexOf("@")<0){
    alert("bad email");}
else{
alert("success");}

}

答案 3 :(得分:0)

只需在每个错误的情况下添加return语句

function test10(email, name)
{

    if(email=="") {
        alert("empty field");
        return false;
    }

    if(email.indexOf("@")<0){
        alert("bad email");
        return false;

    }

    if(name=="") {
       alert("empty field");
       return false;
    }

    alert("success");
    return true;

 }

注意:您需要在表单事件onsubmit="return test10(email,name);"

中添加