多个函数不适用于onsubmit

时间:2016-11-07 13:34:05

标签: javascript forms function onsubmit

我的表单正在验证两个java函数脚本,如果两者都为true,它将继续表单提交。但是当我提交它时,只验证第一个函数validateFormROLLNO()而不是第二个函数。此外,当第一个函数失败时,无论如何都会提交表单。我只想在传递两个函数时提交表单。

第一个函数将检查滚动否= 12个字符。 第二个函数检查名称是否为空。

   <body>
   <center>
 <script type="text/javascript">


function validateFormROLLNO() {
    var x = document.forms["myForm"]["id"].value;
            if (x !=12) {
        alert("ROLLNO must be 12 characters long!!!!");
                        return false;
    }
document.forms["myForm"]["submit"].disabled = true;
document.forms["myForm"]["submit"].value="Wait..";
}


 function validateFormNAME() {
    var p = document.forms["myForm"]["student"].value;
            if (p =='') {
        alert("Name cannot be NULL!!!!");
                        return false;
    }
document.forms["myForm"]["submit"].disabled = true;
document.forms["myForm"]["submit"].value="Wait..";

}

function validate(){
return validateFormROLLNO() && validateFormNAME();
}

</script>

     <br> <FORM name="myForm"  ACTION="insert.jsp"   onsubmit="return validate()"  METHOD="POST">
        Please enter the Rollno and Name you want to INSERT:
        <BR> <br>
        <b>ISIN :<INPUT  TYPE="TEXT" NAME="id"></b>
        <BR><BR>
        <b>   SOURCE :<INPUT TYPE="TEXT" NAME="student"></b>
        <br><BR>

 <INPUT TYPE="SUBMIT" value="Submit">
    </FORM>
     </center>
</body>
</html>

1 个答案:

答案 0 :(得分:0)

页面上可能存在一些javascript错误,不允许第二个函数执行。请使用浏览器的检查元素进行探索。

document.forms [&#34; myForm&#34;] [&#34; id&#34;]。您正在检查文本框的值。请document.forms [&#34; myForm&#34;] [&#34; id&#34;]。value.length来验证它。

这是完整的方法。

function validateFormROLLNO() {
     var x = document.forms["myForm"]["id"].value;
        if (x.length <12) {
    alert("ROLLNO must be 12 characters long!!!!");
                    return false;
  }
  else
   return true;
 document.forms["myForm"]["submit"].disabled = true;
   document.forms["myForm"]["submit"].value="Wait..";
  }