验证Javascript中的多个部分

验证Javascript中的多个部分,javascript,html,Javascript,Html,我的编码有一个小问题。我用普通的旧记事本(请不要评判)来制作这个,这是我个人的一项壮举。除此之外,我只想使用Javascript和HTML以及CSS来构建它 我的代码如下: HTML 我知道这太多了,所以我不需要CSS:p了,基本上我想验证所有的输入都不是空的。当validate函数运行时,它似乎允许所有字段通过,就好像它们不是空的一样,即使它们是空的,但从不启动location.href中的更改。唯一正确工作的字段是选择列表。这将在更改和单击submit按钮时起作用 非常感谢您的反馈!谢谢大

我的编码有一个小问题。我用普通的旧记事本(请不要评判)来制作这个,这是我个人的一项壮举。除此之外,我只想使用Javascript和HTML以及CSS来构建它

我的代码如下:
HTML

我知道这太多了,所以我不需要CSS:p了,基本上我想验证所有的输入都不是空的。当validate函数运行时,它似乎允许所有字段通过,就好像它们不是空的一样,即使它们是空的,但从不启动location.href中的更改。唯一正确工作的字段是选择列表。这将在更改和单击submit按钮时起作用


非常感谢您的反馈!谢谢大家!

与其将这些值与null进行比较,不如将它们与空字符串进行比较,因为如果不在文本框中输入值,则这些值就是空字符串。我还要添加一个对
trim()
的调用,以确保它们没有只输入空格

if (n.trim() === "") {
  //it is empty
}
在调试过程中,查看其中一个变量的值会很有帮助;这样一来,很明显它们不是空字符串,而是空字符串


我想我还应该说,我已经尝试嵌套if、else语句,并将它们分离为单独的函数。我曾经有4个joinList()函数,但它们也不起作用。我试着用if+if-elses,但那不起作用。到目前为止,我运气不太好。请缩进你的代码,这很难(更不用说可怕)阅读。这将帮助您和您的开发伙伴。@Agony没问题。如果它对您有帮助,请记住单击绿色复选标记,将其标记为已接受,以便将来的访问者可以清楚地看到该问题的答案!别担心,我在看计时器。“你可以在4分钟内接受答案。”:)哇。我甚至不知道那是一件事。这就是功能,谢谢你,曼斯菲尔德!
function validate(){
var e = document.getElementById("myList");
var f = e.options[e.selectedIndex].value;
if(f == 0)
{
document.getElementById("country_error").innerHTML="Choose a country!";
}
else{
document.getElementById("country_error").innerHTML="*";
}
}

function choice(){
var e = document.getElementById("myList");
var f = e.options[e.selectedIndex].value;
if(f == 1){
document.getElementById("res_code_lbl").innerHTML="Zip Code: ";
}
else if(f == 2){
document.getElementById("res_code_lbl").innerHTML="Province Code: ";
}
}

function joinList(){
var e1 = document.getElementById("email_address1").value;
var e2 = document.getElementById("email_address2").value;
var n = document.getElementById("first_name").value;
var c = document.getElementById("res_code").value;
if(e1 == null){
document.getElementById("email_address1_error").innerHTML="Enter your email address!";
}
else{ 
document.getElementById("email_address1_error").innerHTML="*";
if(e1 != e2){
document.getElementById("email_address2_error").innerHTML="Your email address must match!";
}
else{
document.getElementById("email_address2_error").innerHTML="*";
if(n == null){
document.getElementById("first_name_error").innerHTML="Enter your first name!";
}
else{
document.getElementById("first_name_error").innerHTML="*";
if(c == null){
document.getElementById("res_code_error").innerHTML="Enter a valid State/Province Code!";
}
else{
document.getElementById("res_code_error").innerHTML="*";
if((e1 != null) && (e1 = e2) && (n != null) && (c != null)){
location.href='countryjoin.html';
}
}
}
}
}
}
if (n.trim() === "") {
  //it is empty
}