我一直在使用一个名为validateForm()的函数来检查表单。基本形式是:
<script type="text/javascript">
function validateForm()
{
var fname=document.forms["reg"]["firstname"].value;
var lname=document.forms["reg"]["lastname"].value;
if (fname==null || fname=="Jane" ||fname=="" || lname==null || lname=="" || lname="Doe")
{
alert("You must provide your name");
return false;
}
</script>
现在,我有两个注册页面。一个人使用我自己编写的一些简单的HTML和CSS,看起来已有一百万年了。另一个利用Bootstrap,因为我正在采取措施,使我维护的页面外观现代化。纯HTML表单的结构如下:
<form name="reg" action="include/registrationwriter.asp" onsubmit="return validateForm();" method="POST">
<strong>First Name*:</strong> <input type="TEXT" name="firstname" size="30" /><br />
<strong>Last Name*:</strong> <input type="TEXT" name="lastname" size="30" /><br />
<input type="SUBMIT" value="Submit" />
</form>
虽然引导页面的结构如下:
<div class="well">
<form name="reg" class="form-horizontal" onsubmit="return validateForm();" action="tcqf_include/registrationwriter.asp" method="POST">
<div class="form-group">
<label for="firstname">First Name*</label>
<input type="text" class="form-control" id="firstname" name="firstname" placeholder="Jane">
</div>
<div class="form-group">
<label for="lastname">Last Name*</label>
<input type="text" class="form-control" id="lastname" name="lastname" placeholder="Doe">
</div>
<button type="submit" class="btn btn-success btn-lg"><span class="glyphicon glyphicon-floppy-disc"></span> Register</button>
</form>
</div>
现在,提交时的纯HTML页面会进行相应的检查,而Bootstrap页面会忽略检查并直接进入处理将结果写入数据库的ASP页面。为什么一个工作而另一个不工作?