js表单验证返回false依然提交怎么回事



js表单验证返回false依然提交怎么回事

问题如题,我在网上查有的说是脚本错误,有的说<form id=”form1″ name=”form1″ method=”post” onsubmit=”return checkForm()” action=”*.do?method=**”>onsubmit放在form标签中是先提交表单后调用方法,改成<input type=”submit” name=”Submit” value=”添加” onclick=”return checkForm()” />是先验证后提交,但是我检查了js(没有错误)也把验证的改到了onclick事件里,依然验证return false后提交数据,现在把代码贴出:
<script language=”javascript” type=”text/javascript”>
function checkForm(){
var code = document.getElementById(“berthcode”);
var name = document.getElementById(“berthname”);
var depart = document.getElementById(“parentdepart”);
if(code.value.length==0){
alert(“泊位代码不能为空!”);
return false;
}
}
function comback(){
location.href=”berthManager.do?method=getAllBerth”;
}

</script>
<body>
<div align=”right”>带<span class=”STYLE1″>*</span>为必填的</div>
<form id=”form1″ name=”form1″ method=”post” action=”*.do?method=**”>
<table width=”575″ border=”0″ align=”center” cellpadding=”3″ cellspacing=”1″ class=”table_style”>
<tr>
<td width=”25%”><span class=”left-title”>泊位代码:</span></td>
<td width=”75%”>
<input name=”berthcode” type=”text” id=”berthcode” />
</td>
</tr>
<tr>
<td><span class=”left-title”>泊位名称:</span></td>
<td>
<input name=”berthname” type=”text” id=”berthname” />
</td>
</tr>
<tr>
<td><span class=”left-title”>所属部门:</span></td>
<td>
<select name=”parentdepart” id=”parentdepart” >
<option value=”0″>–请选择–</option>
<logic:iterate id=”de” name=”alldeparts”>
<option value=”${de.departmentid }”><bean:write name=”de” property=”departmentname”/></option>
</logic:iterate>
</select>
</td>
</tr>
<tr>
<td colspan=”2″ align=”center”>
<input type=”submit” name=”Submit” value=”添加” onclick=”return checkForm()” />
&nbsp;&nbsp;&nbsp;
<input name=”ds” type=”button” id=”reset” value=”返回” onclick=”comback()”/> </td>
</tr>
</table>
</form>

希望各位大侠给予指导,先谢过…..在线等….
更多0分享到:
相关主题推荐: 表单 javascript function select 标签
相关帖子推荐:
iscroll 下拉刷新 怎么让刷新出来的LI和之前的样式相同用js的confirm让用户确认是否删除,但选择“取消”后还是删除了表单求助我要疯了。。是我的classpath配置出错了么?想请教下,关于时间定时器问题c#lock(this)用法!!!!关于Java反射机制的一个问题jq 操作xml问题
准备好了么? 跳吧 !更多职位尽在 CSDN JOB
JS开发工程师
北京领新教育科技发展有限公司|5-10K/月
我要跳槽
node.js前端工程师
北京卓越通达科技有限公司|6-12K/月
我要跳槽
Node.js研发工程师
天津市基理科技有限公司|10-15K/月
我要跳槽
JS前端开发工程师
途家网网络技术(北京)有限公司|15-20K/月
我要跳槽

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理 回复次数:9
LuffySY

LuffySY
LuffySY
本版等级:T4
#1 得分:3 回复于: 2010-03-03 16:57:08
<html:form action=”ticketinfo.do” onsubmit=”return validateform();” >

<html:submit value=” Save “/>

对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
dsf3344521

dsf3344521
dsf3344521
本版等级:T1
#2 得分:0 回复于: 2010-03-03 17:19:24
引用 1 楼 luffysy 的回复:
<html:form action=”ticketinfo.do” onsubmit=”return validateform();” >

<html:submit value=” Save “/>
用标签和html效果不一样吗?
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
LuffySY

LuffySY
LuffySY
本版等级:T4
#3 得分:0 回复于: 2010-03-03 17:30:37
标签本质就是html
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
java_maoweili

java_maoweili
java_maoweili
本版等级:T1
#4 得分:10 回复于: 2010-03-03 17:49:06
<input type=”button” name=”Submit” value=”添加” onclick=”return checkForm()” />
改成 <input type=”button” onclick=”checkForm()” value=”添加”>

然后改下checkForm这个方法


function checkForm(){
var form=document.getElementById(“form1″);
if(form.berthcode.value.length==0){
alert(“泊位代码不能为空!”);
return false;
}
form.submit();
}
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
leavin521

leavin521
leavin521
本版等级:T4
#5 得分:5 回复于: 2010-03-03 18:03:58
onclick=”checkForm();return false;”
这样写试试
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
BearKin

BearKin
BearKin
本版等级:T7
Blank
#6 得分:2 回复于: 2010-03-04 08:55:26
代码太乱了 没咋看
onsubmit=”return checkForm()” 这样写就对了 按纽上就不用调用函数了

另外 也可以通过BUTTON来调用这个函数 然后通过函数去提交
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
dsf3344521

dsf3344521
dsf3344521
本版等级:T1
#7 得分:0 回复于: 2010-03-04 09:02:26
谢谢大家,4楼的那个应该能行,我刚才检查了js代码发现有个分号是中文状态的,修改以后return false就不提交了,麻烦大家了….谢谢
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
Y_2716

Y_2716
Y_2716
本版等级:T2
#8 得分:0 回复于: 2010-03-04 09:07:05
我在网上查有的说是脚本错误,有的说 <form id=”form1″ name=”form1″ method=”post” onsubmit=”return checkForm()” action=”*.do?method=**”>onsubmit放在form标签中是先提交表单后调用方法,改成 <input type=”submit” name=”Submit” value=”添加” onclick=”return checkForm()” />是先验证后提交

这本身就说错了
<form id=”form1″ name=”form1″ method=”post” onsubmit=”return checkForm()” action=”*.do?method=**”>这个是checkForm()为TRUE时才提交
<input type=”submit” name=”Submit” value=”添加” onclick=”return checkForm()” />
这只是一个点击事件而已
对我有用[0] 丢个板砖[0] 引用 | 举报 | 管理
Arthur0088

Arthur0088
Arthur0088
本版等级:T3
#9 得分:0 回复于: 2010-03-04 09:13:45
if(code.value.length==0){
alert(“泊位代码不能为空!”);
return false;
}
后面要返回一个return true;

 

http://bbs.csdn.net/topics/330129149