以下是我的JSP页面中的示例代码:
<form name = loginform method = post action="">
<table class=registerTable>
<tr>
<td>Username:</td></tr>
<tr><td>
<input name=user type=text class=usnm required size=28 maxlength=35 autocomplete="off" onblur="validateUser()" onkeyup="checkUsernameAvailability(this.value)"><br></td></tr>
<tr><td>
<span id = uerrmsg class = error></span><br></td></tr>
</table>
</form>
调用onblur=validateUser()
时,执行以下代码:
function validateUser(){
if(loginform.user.value.length<5){
document.getElementById("uerrmsg").innerHTML="minimum 5 characters";
return false;
}else{
document.getElementById("uerrmsg").innerHTML="";
return true;
}
}
错误控制台在FF中出现以下错误
未定义loginform
请帮我解决这个问题。
PS:以上代码适用于所有其他浏览器。
答案 0 :(得分:0)
您可以使用input.getAttribute(“name”)来获取输入的name属性。 这几乎适用于所有浏览器。
顺便说一句,如果你使用getElementById,你必须填充输入的“id”字段。
答案 1 :(得分:0)
您应该使用document.loginform
。
答案 2 :(得分:0)
您不需要此表单。 首先给你的输入一个id:id =“user”。然后,您可以使用document.getElementById()来访问它,就像使用元素一样。像这样的东西:
document.getElementById("user").value.length
此外,您的代码非常不标准,例如,您不应在属性(或其值)和=符号之间放置“”(空格)。属性的值应该在引号内(例如,查看此页面的源代码)。