js验证失败为什么还跳转 难道是函数逻辑问题吗?具体代码补充问题中

<formaction="regedit"method="post"onSubmit="returnchecked()"><inputtype="text"name="u... <form action="regedit" method="post" onSubmit="return checked()">
<input type="text" name="userid" id="userid" />
<input type="submit" name="submit" value="提交" />
</form>

checked()在js文件夹
function checked() {
var userid = trim(document.getElementById("userid").value);
var error_msg = "";
var result = true;
if (userid.length != 8) {
alert("error");
error_msg = addALine(error_msg, "会员ID必须为8位长度");
result = false;
}
弹出error之后依旧跳转,在线求解答
后面return result ;忘记写了
展开
 我来答
unwmunwm
2012-06-14 · TA获得超过711个赞
知道小有建树答主
回答量:455
采纳率:0%
帮助的人:327万
展开全部
if (userid.length != 8) {
alert("error");
error_msg = addALine(error_msg, "会员ID必须为8位长度");
result = false;
}
之后加上 return true;
因为满足if (userid.length != 8)时返回false,但不满足if (userid.length != 8)时呢?未指定。故而未满足if (userid.length != 8)时返回值未知。
所以:
if (userid.length != 8) {
alert("error");
error_msg = addALine(error_msg, "会员ID必须为8位长度");
result = false;
}
return true;或者 return false;
追问
我补充里面补充了啊 我是忘记写了  就是最后就是一句 return result;result就是最先设置的布尔标志位
追答
这样子的:
var result = true;
if (userid.length != 8) {
alert("error");
error_msg = addALine(error_msg, "会员ID必须为8位长度");
result = false;
}
return result;

当if (userid.length != 8) 不为真时,result 的值是之前定义的true。返回值为真,form就要动作了啊。
应该这样写:
var result = false;
if (userid.length = 8) {
result = true;
}else{
alert("error");
error_msg = addALine(error_msg, "会员ID必须为8位长度");
result = false;
}
return result;

只让满足条件的情况下才返回true,其他都是false,行了。
lab364564324
2012-06-14 · TA获得超过850个赞
知道小有建树答主
回答量:606
采纳率:50%
帮助的人:381万
展开全部
首先直接return false不就行么,还定义个变量return干嘛!
把onSubmit="return checked()"移到button的onclick事件呗!
追问
类型为buttton的话表单数据怎么提交?而且我用你的方法结果那个alert内容也没有弹出来~只出现了页面下面说网页有错误
追答
button……不能提交……
那我都是怎么提交上去的……你太让我尴尬了!
反正我的提交、alt都没问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
召合dZ
2012-06-14 · TA获得超过155个赞
知道答主
回答量:196
采纳率:0%
帮助的人:148万
展开全部
在<form action="regedit" method="post" onSubmit="return checked()">
中的return checked()后面添加分号“;”
追问
还是跳转了啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式