为什么JS脚本验证在ASP中没通过,但表单还是会被提交

 我来答
miniappcy3tv95eaedrf
2011-03-23 · TA获得超过2363个赞
知道大有可为答主
回答量:1909
采纳率:92%
帮助的人:1111万
展开全部
可能是你的脚本运行中出错了,这样就导致表单直接提交了
在表单里一般用name属性就可以了,不要滥用id
function check_yp()
{
UserName=document.yp.UserName
if(UserName.value==""){
alert("用户名不能为空!");
UserName.focus();
return false;
}
}
这是JS代码
<form name="yp" method="post" action="job-online.asp?up=true&page_no=<%=page_no%>" onSubmit="return check_yp();">
<input type="text" name="UserName" />
<input type="submit" value="提交">
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
asd2fque1
2011-03-23 · TA获得超过381个赞
知道小有建树答主
回答量:117
采纳率:0%
帮助的人:152万
展开全部
一种可能是你执行js的控件是submit性质的控件,如input type="submit"或者input type="image"等。
另一种可能是你asp页里的<base……>起做用。

如果是onsubmit事件做的验证,应该在验证不通过时返回false。

你能不能写出你怎么做的验证,还有相关的东西,这样让人怎么猜。
追问
function check_yp()
{
UserName=document.getElementById("UserName").value;
if(UserName==""){
alert("用户名不能为空!");
document.getElementById("UserName").focus();
return false;
}
}
这是JS代码
" onSubmit="return check_yp();">

没弹ALERT(); 直接提交了
追答
那就是跟本没进if,在if外面alert一下,看看username是什么值然后再看怎么回事。
UserName这个控件怎么没看见啊?
如果没有UserName这个控件,
document.getElementById("UserName").value会报错,
然后后面代码就都不执行了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
w_yin_yin
2011-03-24
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
可能是js脚本在出现问题时候没有停止的语句,后面的程序仍在执行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
loveid
2011-03-23 · TA获得超过358个赞
知道小有建树答主
回答量:447
采纳率:100%
帮助的人:517万
展开全部
没通过JS应该return false
验证的JS也要写到<form name="form1" method="post" action="" >里面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式