Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么赢了';JavaScript警报框在本例中是否正常工作?_Javascript - Fatal编程技术网

为什么赢了';JavaScript警报框在本例中是否正常工作?

为什么赢了';JavaScript警报框在本例中是否正常工作?,javascript,Javascript,我正在尝试使用javascript验证html表单中的3个字段。如果任何字段为空,则会出现一个警告框,并显示一条消息,指示哪些字段为空。这一切都很好。当表单正确完成时,我无法将消息(msg2)显示在警报框中。下面是我的代码——我知道如果有人能帮我的话,我会错过一些简单的东西。谢谢 var valid = true; var msg="Incomplete form:\n"; var msg2="Success! There are no null fields."; if ( myna

我正在尝试使用javascript验证html表单中的3个字段。如果任何字段为空,则会出现一个警告框,并显示一条消息,指示哪些字段为空。这一切都很好。当表单正确完成时,我无法将消息(msg2)显示在警报框中。下面是我的代码——我知道如果有人能帮我的话,我会错过一些简单的东西。谢谢

 var valid = true;
 var msg="Incomplete form:\n";
 var msg2="Success! There are no null fields.";
 if (  myname== "" ) {
  msg+="You need to fill the name field!\n";
  valid = false;
 }
 if ( emailaddress == "" ) {
  msg+="You need to fill in your email!\n";
  valid = false;
 }

 if ( commentString == "" ) {
  msg+="You need to fill in your comment!\n";
  valid = false;
  }

 if ((!myname=="")&&(!emailaddress=="")&&(!commentString=="")){
  return msg2;
  }

 if (!valid) alert(msg);
  return valid;
}

你说得对,很简单:
返回msg2将不会打开警报框。您仍然需要在某个地方调用
alert()

您是对的,这很简单:
返回msg2将不会打开警报框。您仍然需要在某个地方调用
alert()

我认为代码中的一点更改可以解决问题:

if (!valid) alert(msg);
  return valid;
}
换成

if (!valid) { 
  alert(msg);
  return valid;
}

我认为对您的代码稍加修改就能解决问题:

if (!valid) alert(msg);
  return valid;
}
换成

if (!valid) { 
  alert(msg);
  return valid;
}
也许是那样的?如果((!myname==“”)和&……

可能是这样的?并使用
if((!myname==“”)和&…