一个onclick中的两个函数-Javascript
我试图同时执行两个函数来验证在线表单。第一种形式工作正常,但第二种形式未被执行。有人能指出我的代码有什么问题吗一个onclick中的两个函数-Javascript,javascript,regex,validation,Javascript,Regex,Validation,我试图同时执行两个函数来验证在线表单。第一种形式工作正常,但第二种形式未被执行。有人能指出我的代码有什么问题吗 function both(){ validation(); regex(); } function validation(){ var valid = true; var error = []; if (document.check_in.forename.value == ""){ error.push("First Na
function both(){
validation();
regex();
}
function validation(){
var valid = true;
var error = [];
if (document.check_in.forename.value == ""){
error.push("First Name");
valid = false;
}
if (document.check_in.surname.value == ""){
error.push("Surname");
valid = false;
}
if (valid == false) {
alert("Please fill in the following fields:\n" + error.join("\n") + ".");
}
return valid;
}
function regex(){
var fnameRE = /^[a-zA-Z]+$/;
var valid_reg = true;
var error_reg = [];
if (!fnameRE.test(document.check_in.forname.value)) {
error_reg.push("Please use characters only in First Name field.");
valid_reg = false;
}
else if (valid_reg == false) {
alert("Please fill s:\n" + error_reg.join("\n") + ".");
}
return valid_reg;
}
和HTML:
<form name="check_in" method="POST" action="form.html" onSubmit="return both()">
我想你需要这样的东西
function both(){
return (validation() && regex())
}
这样,只有当两个函数都通过验证时,“两者”才会返回
true
。否则它将返回false
我认为您需要类似
function both(){
return (validation() && regex())
}
这样,只有当两个函数都通过验证时,“两者”才会返回
true
。否则它将返回false
我认为您需要类似
function both(){
return (validation() && regex())
}
这样,只有当两个函数都通过验证时,“两者”才会返回
true
。否则它将返回false
我认为您需要类似
function both(){
return (validation() && regex())
}
这样,只有当两个函数都通过验证时,“两者”才会返回
true
。否则它将返回false
我不确定,但可能就是这样……您正在调用两个函数,其中都包含return语句,一旦它遇到第一个return语句,代码执行就会结束。您是否尝试在regex()
函数中添加警报?你能试试看,证明我的陈述是对的/错的吗
您的解决方法:
function both(){
var valid = validation();
var regexvalid = regex();
if(valid && regexvalid)
return true;
else
return false;
}
我不确定,但可能就是这样……您正在调用两个函数,两个函数中都有return语句,当它遇到第一个return语句时,代码执行就结束了。您是否尝试在
regex()
函数中添加警报?你能试试看,证明我的陈述是对的/错的吗
您的解决方法:
function both(){
var valid = validation();
var regexvalid = regex();
if(valid && regexvalid)
return true;
else
return false;
}
我不确定,但可能就是这样……您正在调用两个函数,两个函数中都有return语句,当它遇到第一个return语句时,代码执行就结束了。您是否尝试在
regex()
函数中添加警报?你能试试看,证明我的陈述是对的/错的吗
您的解决方法:
function both(){
var valid = validation();
var regexvalid = regex();
if(valid && regexvalid)
return true;
else
return false;
}
我不确定,但可能就是这样……您正在调用两个函数,两个函数中都有return语句,当它遇到第一个return语句时,代码执行就结束了。您是否尝试在
regex()
函数中添加警报?你能试试看,证明我的陈述是对的/错的吗
您的解决方法:
function both(){
var valid = validation();
var regexvalid = regex();
if(valid && regexvalid)
return true;
else
return false;
}