Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript仅在第二次单击后才在第一次单击上工作_Javascript_Html_Forms - Fatal编程技术网

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;

我试图让我的javascript正常工作,但在它开始执行之前,我必须点击提交按钮两次。之后,它似乎工作正常

<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>