Javascript仅在第二次单击后才在第一次单击上工作
我试图让我的javascript正常工作,但在它开始执行之前,我必须点击提交按钮两次。之后,它似乎工作正常Javascript仅在第二次单击后才在第一次单击上工作,javascript,html,forms,Javascript,Html,Forms,我试图让我的javascript正常工作,但在它开始执行之前,我必须点击提交按钮两次。之后,它似乎工作正常 <script type="text/javascript"> function validation() { var home = document.forms["frmTest"]["phone-number"].value; var mobile = document.forms["frmTest"]["mobile-number"].value;
<script type="text/javascript">
function validation() {
var home = document.forms["frmTest"]["phone-number"].value;
var mobile = document.forms["frmTest"]["mobile-number"].value;
var validPhone = true;
var errorMessage = ""
if (home == "" && mobile == "") {
errorMessage = "You must fill in at least 1 phone number";
validPhone = false;
}
if (validPhone) {
return true;
}
else {
document.getElementById("mobile-number").setCustomValidity(errorMessage);
document.getElementById("btnSubmit1").click();
//alert(errorMessage);
return false;
}
}
函数验证(){
var home=document.forms[“frmTest”][“电话号码”]。值;
var mobile=document.forms[“frmTest”][“mobile number”]值;
var validPhone=真;
var errorMessage=“”
if(home==“”&mobile==“”){
errorMessage=“您必须填写至少一个电话号码”;
validPhone=false;
}
如果(有效电话){
返回true;
}
否则{
document.getElementById(“手机号码”).setCustomValidity(errorMessage);
document.getElementById(“btnSubmit1”)。单击();
//警报(错误消息);
返回false;
}
}
HTML:
<form enctype="multipart/form-data" style="margin:0px; padding:0px " action="thankyou-test.php"
method="post"
name="frmTest"
id="frmTest"
onsubmit="return validation();"
>
请帮忙!一切都正常,除了我最初需要点击两次。Hi,你能将你的html添加到问题中吗。在jsfiddle这样的站点上制作一个工作示例来演示您遇到的问题也很有帮助。也可以添加将表单send绑定到函数的方式。一些风格注释:1)在您的状态后添加“;”(
errorMessage=“
)2)与===
比较,而不是=
。您好,我添加了我的HTML代码。我的函数在执行时似乎只执行了一次,但再次单击“提交”时,它不会执行任何进一步的检查@Giggleshi先生,你能把你的html添加到问题中吗。在jsfiddle这样的站点上制作一个工作示例来演示您遇到的问题也很有帮助。也可以添加将表单send绑定到函数的方式。一些风格注释:1)在您的状态后添加“;”(errorMessage=“
)2)与===
比较,而不是=
。您好,我添加了我的HTML代码。我的函数在执行时似乎只执行了一次,但再次单击“提交”时,它不会执行任何进一步的检查@格格先生
<tr>
<td width="50%"><input id="phone-number" placeholder="Phone Number"
name="phone-number"
maxlength="11" type="text" pattern="^(01|02|03)\d{8,9}"
title="UK Phone numbers must begin with 01, 02, 03 and be 10 or 11 characters in length"></td>
<td width="50%"><input id="mobile-number" placeholder="Mobile Number"
name="mobile-number" maxlength="11" type="text"
pattern="^(07)\d{8,9}"
title="UK Mobile numbers must begin with 07 and be 10 or 11 characters in length"></td>
</tr>