【发布时间】:2018-05-16 12:48:42
【问题描述】:
在这个表单中,我希望当我提交表单时它会验证表单然后提交,但是这里的表单是在没有验证的情况下提交的。每当我单击提交按钮时,它都会要求验证但未验证它会提交到数据库。我想要 onsubmit,它要求验证,当插入有效数据时,表单将提交。
<html>
<head>
<title>Ajax Form</title>
<style>
.right-align{
position: absolute;
right: 70%;
text-align: left;
}
.select_country{
position: absolute;
right: 70%;
width: 160.8;
height: 22;
}
</style>
<head>
<body>
<form name="bhawesh" onsubmit="validate()" method="post" action="formajaxsub.php">
NAME: <input type="text" name="name" class="right-align"><br><br>
FATHER'S NAME: <input type="text" name="father" class="right-align"><br><br>
E-MAIL:<input type="text" name="email" class="right-align"> </font><br><br>
CONTACT:<input type="text" name="contact" class="right-align"> </font><br><br>
COUNTRY:
<select name="country" class="select_country" >
<option>--Select--</option>
<option name="ind">INDIA</option>
<option name="eng">ENGLAND</option>
<option name="chi">CHINA</option>
<option name="aus">AUSTRALIA</option>
</select><br><br>
<input type="submit" Value="SUBMIT" name="submit">
</form>
</body>
<script>
function validate()
{
var a = document.forms["bhawesh"]["name"].value;
if (a == "")
{
alert("Enter the name");
}
var b = document.forms["bhawesh"]["father"].value;
if (b == "")
{
alert("Enter the Father's name");
}
var c = document.forms["bhawesh"]["email"].value;
if (c.indexOf("@")<1 || c.lastIndexOf(".")+2>=c.length || c.indexOf("@")+2>c.lastIndexOf("."))
{
alert("The E-Mail is not OK");
}
var phone = document.forms["bhawesh"]["contact"].value;
if(phone.length > 6 && phone.length < 11)
{
return true;
}
else
{
alert("Contact Number is not OK");
}
var e=document.forms["bhawesh"]["country"].value;
if (e=="")
{
alert("Select the country");
}
}
</script>
</html>
【问题讨论】:
-
将
required属性添加到输入?或者,如果您想要更多控制权,则必须添加 onsubmit 处理程序来执行您想要的所有验证。
标签: javascript