我所有的if语句都可以自己运行,但是当我将所有这些语句都放在函数中时,我无法让它们全部工作。
function validate()
{
var x = document.forms["myForm"]["patientName"].value;
var y = document.forms["myForm"]["patientId"].value;
var z = document.forms["myForm"]["patientEmail"].value;
var yL = y.toString().length;
var search1 = z.search("@");
var search2 = z.search(".");
if (myForm.emailReceipt.checked == true) {
if (x == "" || y == "" || Z == ""){
alert("Name, ID, and Email must be filled out");
}else if (search1 == -1 || search2 == -1){
alert("Please submit a valid email address");
}
if ((myForm.emailReceipt.checked == false) && (x == "" || y == "" )) {
alert("Name and ID must be filled out");
}
if (yL !== 8){
alert("ID must be 8 digits long");
}
}
答案 0 :(得分:0)
您应该以干净,格式化的方式编写代码,或使用为您执行此操作的IDE。如果你这样做,你会发现你因为缺少花括号而有语法错误。
另外,在第二个条件下将大写字母Z更改为小写字母z。
最后,请务必检查您的条件逻辑。例如,你的外部if条件检查是否MovieDescription
,但其中的条件检查是否myForm.emailReceipt.checked == true
,它将永远不会通过。这可能是条件单独工作但不能一起工作的原因。逐步完成您的逻辑,只添加必要的内容。
以下是您的代码的无错误版本,但仍需要您逐步完成逻辑并进行相应修复:
myForm.emailReceipt.checked == false