js表单:验证成功,非法数据依然被提交怎么办?

functioncheckuser(){vark1=document.getElementById("k1")varnr=document.getElementById(... function checkuser(){
var k1=document.getElementById("k1")
var nr=document.getElementById("username").value
if(!nr){
k1.innerHTML="用户账号不能为空!"
return
}
else{
var z=/[0-9a-zA-Z_-]{4,16}/
var e=new RegExp(z)
if(e.test(nr)==false){
k1.innerHTML="用户账号设置不合规则!"
return
}
else{
str="6.asp?username="+nr+"&t="+new Date().getTime()
xmlhttp.open("GET",str,true)
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
k1.innerHTML=xmlhttp.responseText
}
}
xmlhttp.send(null)
}
}
}
展开
 我来答
阳光上的桥
2009-03-24 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21424 获赞数:65806
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
一、验证代码写在<form>的onsubmit事件里面,这样比写在<input type=submit>的onclick里面要好,例如:
<form name=... action=... method=post onSubmit="return check();">

二、非法数据提示之后,一定要return false;例如:
function check(){
if (document.form1.username.value=='') {alert('用户名为空!');return false;}
return true;
}

补充:
我说得不清楚吗,比如你下面这段就不对:
if(!nr){
k1.innerHTML="用户账号不能为空!"
return
}
应该修改为:
if(!nr){
k1.innerHTML="用户账号不能为空!"
return false
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式