Js表单Submit问题
2024-08-24 15:33:15
一般在submit前,会用js查核是否满足提交标准,如下:
function doSubmit(){ if(doucument.getElementbyId("myID") ==""){ alert("xxxx为空!!!"); return false; } return true; }
但如果dosubmit中需要检验的模块较多,为了方便,我们在先定义多个js方法,然后在dosubmit中调用这些js方法,如下
function doSubmit(){ CheckRadioButton(); CheckTextBox(); return true; } function CheckRadioButton(){ if(doucument.getElementbyId("myID") .checked==false){ alert("未选中!!!"); return false; } } function CheckTextBox(){ if(doucument.getElementbyId("myID") ==""){ alert("xxxx为空!!!"); return false; } }
这事我们发现,在提交表单时,有弹出对话框,但数据还是传送出去了!!!!但为什么第一种方式可行,第二种方式就不行了?
如果我们在js方法中加入event.returnValue=false,这时我们发现就可以了。
function doSubmit(){ CheckRadioButton(); CheckTextBox(); return true; } function CheckRadioButton(){ if(doucument.getElementbyId("myID") .checked==false){ alert("未选中!!!"); event.returnValue=false; return false; } } function CheckTextBox(){ if(doucument.getElementbyId("myID") ==""){ alert("xxxx为空!!!"); event.returnValue=false; return false; } }
那event.returnValue=false;与return false;有什么区别?
event.returnValue 将其值设置为false就可以取消事件的默认行为(适合IE),比如submit按钮提交表单的功能;return 就是从函数体返回一个结果。故在第一种
情况中,即使返回了false,但主函数体
function doSubmit(){ return true; }
依然返回true了!
最新文章
- SQL存在一个表而不在另一个表中的数据, 更新字段为随机时间
- hbase hmaster故障分析及解决方案:Timedout 300000ms waiting for namespace table to be assigned
- Vue系列: 如何通过组件的属性props设置样式
- Computer Science Courses – Yan Yan
- Kettle合并记录步骤
- Codeforces 611d [DP][字符串]
- quartz 数据表字典
- hdu 4639 Hehe (dp)
- HDU1556(树状数组)
- jdbc连接sqlserver,mysql,oracle
- Introducation of Servlet filter(servlet过滤器介绍 )
- 初涉Java方法
- Deep Learning系统实训之一:深度学习基础知识
- Qt介绍1---QPA(Qt Platform Abstraction)
- 怎样从外网访问内网WebLogic?
- JAVA面试精选【Java web部分一】
- console框脱离eclipse窗口
- Windows server 2012 R2 与 Windows 2016 的双系统重启选项
- java解析json字符串
- 【转】JMeter使用指南