javascript事件问题

来源:百度知道 编辑:UC知道 时间:2024/09/23 08:24:23
“姓名”和“班级”的文本输入只检验是否为空,“学号”的文本输入要检验是否为11位,如果不是11位则给出 “学号长度不对”的提示框。

我的答案:错在哪?

<html>
<head>
<title>Example: 习题四</title>
<script language="JavaScript">
function checkValid(s)
{
var len = s.length;
for(var i=0;i<len;i++)
{
if (s.charAt(i)!="")
{
return false;
}
}
return true;
}
function okHandle()
{
if (checkValid(document.test.username.value))
{
window.alert("姓名不能为空!");
}
else if (checkValid(document.test.class.value))
{
window.alert("班级不能为空!");
}
else if (checkValid(document.test.STID.value))
{
window.alert("学号不能为空!");
}
else if(document.test.userNumber.value.length!=11)
{
alert("学号长度不对");
}
else
{
window.ale

<input type ="text" name="class">
这里class要改名字改成classname或其它。因为class是关键字。
else if(document.test.userNumber.value.length!=11)这里useNumber 没有定义,按你的意思应该是document.test.STID.value.length!=11
这样改了网页运行就正常了,但不是正确的,因为点了确定之后表单是不会提交的。
把else
{
window.alert("您填写正确!");

}改成
else
{
window.alert("您填写正确!");
document.test.submit();
}是改动最少的。
博客:http://blog.csdn.net/shmilyhe
欢迎上来和我交流

到少有两个错误:
1.<input type ="text" name="class">这句name="class"其中class为保留字,不能用于命名,改成其它名字,同时
document.test.class.value="";

document.test.class.value这两句也要改
2.document.test.userNumber.value.length!=11改成:
document.test.STID .value.length!=11

document.test.class.value=""; 这里的class是保留字,不能用,改成其它的字符
else if(docum