【问题标题】:multiple function not working for onsubmit多个功能不适用于 onsubmit
【发布时间】:2016-11-07 13:34:04
【问题描述】:

我的表单正在验证两个 java 函数脚本,如果两者都为真,它将继续提交表单。但是当我提交它时,它只验证第一个函数 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>

【问题讨论】:

    标签: javascript forms function onsubmit


    【解决方案1】:

    页面上可能存在一些 javascript 错误,导致第二个函数无法执行。请使用浏览器的检查元素来探索它。

    document.forms["myForm"]["id"].value 您正在检查文本框的值。请 document.forms["myForm"]["id"].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..";
      }
    

    【讨论】:

    • document.forms["myForm"]["id"].value
    • document.forms["myForm"]["id"].value 您正在检查文本框的值。请 document.forms["myForm"]["id"].value.lenth 进行验证。
    • 谁给了它反对票。它正在工作,我已经测试过了
    • 谢谢卡门.. 试过你的脚本它工作! .我可以将它用于多种功能吗??
    • @stephenjacob 取决于逻辑:)
    猜你喜欢
    • 1970-01-01
    • 2019-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    • 2021-10-28
    • 2021-06-11
    相关资源
    最近更新 更多