通过JavaScript验证使表单字段成为可选字段
我有如下JavaScript表单验证函数:通过JavaScript验证使表单字段成为可选字段,javascript,function,validation,Javascript,Function,Validation,我有如下JavaScript表单验证函数: function validate_name(field) { if (field == "") return "Please enter the name.\n"; return ""; } function validate_specialty(field) { if (field == "") return "Please enter the specialty.\n"; return ""; } func
function validate_name(field)
{
if (field == "") return "Please enter the name.\n";
return "";
}
function validate_specialty(field)
{
if (field == "") return "Please enter the specialty.\n";
return "";
}
function validate_location(field)
{
if (field == "") return "Don't forget the location.\n";
return "";
}
其中,从表单的onSubmit
调用的函数是:
function validate_fields(form)
{
fail = validate_name(form.name.value);
fail += validate_specialty(form.specialty.value);
fail += validate_location(form.location.value);
if (fail == "")
return true;
else
{
alert(fail);
return false;
}
}
这很好,但我已经决定,我不希望这三个都是必需的。如果我可以将这三个字段设置为可选的话,那就太好了,这样,如果这些字段中的任何一个被填充,它都会验证为true,但是如果这三个字段都为空,我就可以抛出警报并验证为false
非常感谢您提供的任何帮助。您可以通过单独捕获结果并使用或分组进行测试来实现这一点
function validate_fields(form)
{
fail1 = validate_name(form.name.value);
fail2 = validate_specialty(form.specialty.value);
fail3 = validate_location(form.location.value);
if (fail1 == "" || fail2 == "" || fail3 == "")
return true;
else
{
alert(fail1 + fail2 + fail3);
return false;
}
}
您可以通过单独捕获结果并使用或分组进行测试来实现这一点
function validate_fields(form)
{
fail1 = validate_name(form.name.value);
fail2 = validate_specialty(form.specialty.value);
fail3 = validate_location(form.location.value);
if (fail1 == "" || fail2 == "" || fail3 == "")
return true;
else
{
alert(fail1 + fail2 + fail3);
return false;
}
}
这与我尝试的类似,但我使用了警报字符串。它不起作用,但我想我会像你写的那样尝试,看看我是否做错了什么。谢谢,还是小费。这很有魅力。我当时使用的方法忽略了
警报(fail1+fail2+fail3)
,并且使用了警报(“Failed”)
,我认为这是可行的(尽管现在看它,这似乎是一种愚蠢的方法),但没有想到-再次感谢!这与我尝试的类似,但我使用了警报字符串。它不起作用,但我想我会像你写的那样尝试,看看我是否做错了什么。谢谢,还是小费。这很有魅力。我当时使用的方法忽略了警报(fail1+fail2+fail3)
,并且使用了警报(“Failed”)
,我认为这是可行的(尽管现在看它,这似乎是一种愚蠢的方法),但没有想到-再次感谢!