我的表单正在验证两个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>
答案 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..";
}