我做的一个登录界面,在客户端判断用户名和密码是否为空!
在js写了一个函数validate(有参数)
然后判断参数是username还是password进行的处理。
最后用onblur事件
可是出现页面卡掉!
大家有谁遇到过这种情况?
然后又是怎么解决 的?
在js写了一个函数validate(有参数)
然后判断参数是username还是password进行的处理。
最后用onblur事件
可是出现页面卡掉!
大家有谁遇到过这种情况?
然后又是怎么解决 的?
<head>
<script>
function validate(pvalue)
{
var current=document.getElementById(pvalue).value;
if(current.length==0)
{
if(pvalue=="username")
{
document.getElementById("un").innerHTML="<font color=red>用户名不能为空!</font>";
document.getElementById("username").focus();
}
else if(pvalue=="password")
{
document.getElementById("ps").innerHTML="<font color=red>密码不能为空!</font>";
document.getElementById(pvalue).focus();
}
}
}
</script>
</head>
<body>
<form>
<table>
<tr><td>用户名</td><td><input type="text" name="username" id="username" onblur=validate("username")></td><td id="un"></td><tr><tr><td>密码</td><td><input type="password" name="password" id="password" onblur=validate("password")></td><td id="ps"></td></tr>
</table>
</form>
</body>
</html>以前那个代码没有,这是我简单的写了一下。运行结果是浏览器没有响应!
当焦点落在username时没有输入,离开然后进入password。这期间的事件是这样的:
首先触发的是username的onblur事件,显示提示问题,然后焦点重现聚焦到username;
由刚才的焦点在password到现在的username,又触发了password的onblur事件;
……
……
就这样进入死循环了。
^_^