应该为此需要一个非常简单的解决...使用Javascript - 如果“&&”(需要咨询)
我有我要被验证为空字段登记表和JavaScript的有回报分居条件一个简单的弹出式警报如果需要的话。这里是脚本代码:
<script type="text/javascript">
function validateForm() {
var a = document.forms["registration_form"]["school"].value;
var b = document.forms["registration_form"]["name"].value;
var c = document.forms["registration_form"]["password"].value;
var d = document.forms["registration_form"]["field"].value;
var e = document.forms["registration_form"]["field_location"].value;
var f = document.forms["registration_form"]["volleyball_campus"].value;
var g = document.forms["registration_form"]["volleyball_location"].value;
var h = document.forms["registration_form"]["indoor"].value;
var i = document.forms["registration_form"]["outdoor_courts"].value;
var j = document.forms["registration_form"]["blackout"].value;
var k = document.forms["registration_form"]["blackout_dates"].value;
if (a == "" || b == "") {
alert("Please make sure to enter your name and school.");
return false;
} else if (c != "pal") {
alert("Sorry, your password is invalid.");
return false;
} else if (d == "no" && e == "") {
alert("Please make sure to enter where you will play football.");
return false;
} else if (f == "no" && g == "") {
alert("Please make sure to enter where you will play volleyball.");
return false;
} else if (h == "no" && i == "0") {
alert("Please make sure to select how many outdoor volleyball courts you will use.");
return false;
} else if (j == "yes" && k == "") {
alert("Please make sure to enter your blackout dates.");
return false;
}
}
</script>
一切工作正常的变量a,b和c。然而,其他情况下,如果以变量d & & e开始的条件似乎不执行。我认为我必须在这个措辞上做错了什么,但我无法弄清楚它是什么。
我已经设置了我的服务器端PHP脚本来做同样的事情,它没有任何问题。你可以在这里看到:
//Validate the form:
if ($_POST['school'] == "" || $_POST['name'] == "") {
echo "Please make sure to enter your name and school.";
} elseif ($_POST['password'] != "pal") {
echo "Sorry, your password is invalid.";
} elseif ($_POST['field'] == "no" && $_POST['field_location'] == "") {
echo "Please make sure to enter where you will play football.";
} elseif ($_POST['volleyball_campus'] == "no" && $_POST['volleyball_location'] == "") {
echo "Please make sure to enter where you will play volleyball.";
} elseif ($_POST['indoor'] == "no" && $_POST['outdoor_courts'] == "0") {
echo "Please make sure to select how many outdoor volleyball courts you will use.";
} elseif ($_POST['blackout'] == "yes" && $_POST['blackout_dates'] == "") {
echo "Please make sure to enter your blackout dates.";
} else {
这捕获的一切,我想要的方式,但客户端JavaScript验证(这是我第一次只运行了更加人性化的外观)似乎并没有过去的第一工作三个变量。
我不能为我的生活找出原因。我在互联网上搜索过,但无法找到我正在寻找的答案。任何帮助将非常感激!
P.S.该页面本身位于http://www.712jefferson.org/pal/registration.html,如果这有助于澄清预期的过程。
无线电按钮不会D和E中都有值?任何控制台错误? – Krishna
你怎么知道他们错了?你确定知道变量的值是什么? – Pointy
谁用这种方式命名变量?啧。 – Mathletics