N久没有写Javascript代码了,昨天有同事反映我N年前写的一个表单有问题,无法提交,于是,打开代码检查;才发现以前的水平非常菜啊!
代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>****</TITLE>
<META content="text/html; charset=Utf-8" http-equiv=Content-Type>
<SCRIPT type="text/javascript">
function checkform()
{
if(document.form.supervisor.value="") //此处错误,判断空值应改为:typeof(document.getElementsByName("supervisor").value)=='undefined' ||document.getElementsByName("supervisor").value==Null
{
alert("请在*****项中签上你的名字,再提交.");
document.form.supervisor.focus(); //此写法也不符合DOM规范,为了能与不同浏览器平台兼容,应改为:document.getElementById(""supervisor"").focus(); 如使用getElementsByName,则应该这样写document.getElementsByName(""supervisor"")[0].focus(); 此处需注意加上红色部分的引用下标,如果不加,则无法定位焦点,因为getElementsByName方法返回的是一个对象列表.
return false;
}
//此处省略部分代码
}
</SCRIPT>
</HEAD>
<BODY style="BORDER-BOTTOM: #999999 1px dotted; BORDER-LEFT: #999999 1px dotted; BORDER-TOP: #999999 1px dotted; BORDER-RIGHT: #999999 1px dotted">
<DIV align=center>
<H2>****</H2>
</DIV>
<FORM method="post" name="form" action="http://***/*** " οnsubmit="return checkform();">
<TABLE border=0 width=760>
<!--此处省略部分代码-->
<TR>
<!--此处省略部分代码-->
<TD>
<INPUT name="supervisor" id="supervisor">
<INPUT name="supervisormail" id="supervisormail" value="semail" type="hidden">
</TD>
<!--此处省略部分代码-->
</TR>
<TR>
<TD >
<INPUT name="submit" value="submit" type="submit">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>