Html 中表单提交的一些知识总结——防止表单自动提交,以及submit和button提交表单的区别...
转自:http://jackaudrey.blog.163.com/blog/static/1314217882010590041833/
在页面中有多个input type="text"的文本输入框的情况下没有问题,但是当页面中有只有一个文本框的情况下(),就会出现此问题.
后来在form 中添加:οnsubmit="return false;"问题终于解决。
<form name="frm" method="post" οnsubmit="return false;">
下边对“防止表单自动提交,以及submit和button提交表单”进行了些总结,希望对大家有些用(如果有不当的地方请指出)。
< html >
< script > function exec(p){ document.frm.action = p ; document.frm.submit();
}
function exec1(p){ document.frm.action = p ; document.frm.submit(); document.frm1.submit();//IE页面定位到最后一个提交的action所对应的页面 alert("haha");//submit()后边的语句正常执行,这里弹出框文字”haha“
}
</ script >
< head >
< h1 > 总结:FORM onSubmit = "return false" 防止表单自动提交,以及submit和button提交表单的区别 </ h1 >
< head >
< body >
<!-- (1) 下边的写法使得表单frm能够自动提交
下边的这个form,将鼠标点进的文本框中然后按键盘的回车键,则页面自动进入百度页面:http://www.baidu.com
< form name = 'frm' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "hidden" name = "userName1" />
</ form > 注意:将上边的“< input type = "hidden" name = "userName1" /> ”去掉或者增加上,都不能改变页面的自动提交!
--> <!-- (2)而同样的写法,进行如上的操作,却不会提交
可能是有两个文本输入框的缘故吧(注意:上边仅有一个)。
那如果一个页面中有多个from会怎样??后边有相关试验。 < form name = 'frm' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "pass" />
</ form >
--> <!-- (3)下面试试,同一个页面有多个from的情况
这里先试试多个form、每个form中仅有一个文本输入框
< form name = 'frm1' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "hidden" name = "userName1" />
</ form >
< form name = 'frm2' action = "http://www.google.cn/" > < input type = "text" name = "userName" />
</ form >
经试验,每个from中的文本输入框都具有自动提交的能力。
--> <!-- (4)下面试试,同一个页面有多个from的情况
这里先试试多个form、有的form中仅有一个文本输入框,有的form中则有多个文本输入框
< form name = 'frm1' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" />
</ form >
< form name = 'frm2' action = "http://www.google.cn" > < input type = "text" name = "userName" />
</ form >
< form name = 'frm3' action = "http://www.yahoo.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" />
</ form >
经试验,只有 frm2 具有自动提交的特性。 看来:只要页面中的某个表单中仅有一个文本输入框,则其页面就具有自动提交的特性了。
-->
<!--(5)如何防止页面自动提交?!
很简单!只要在from 中加上 onSubmit = "return false;" 就OK了!
< form name = 'frm1' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" />
</ form >
< form name = 'frm2' action = "http://www.google.cn" onSubmit = "return false;" > < input type = "text" name = "userName" />
</ form > 呵呵,经过onSubmit = "return false;" 改造后,frm2不再自动提交了!
-->
<!--(6)下边看看input type = "submit" 对提交表单的影响 这里不拿仅有一个文本框的form进行测试了(如果不用onSubmit = "return false;" ,它是自动提交的)
< form name = 'frm1' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" /> < input type = "submit" value = "提交1" />
</ form >
< form name = 'frm2' action = "http://www.google.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" /> < input type = "submit" value = "提交2" />
</ form >
则,分别鼠标点击frm1、frm2中的文本框并按回车后,会根据各自的action来进入不同的页面
-->
<!--(7)下边看看input type = "button" 对提交表单的影响
< form name = 'frm1' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" /> < input type = "button" value = "提交1" />
</ form >
< form name = 'frm2' action = "http://www.google.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" /> < input type = "button" value = "提交2" />
</ form > 哈哈,分别鼠标点击frm1、frm2中的文本框并按回车后,都没有反应!看来button这样是不能提交表单的
--> <!--(8)使用 "button" 来提交表单 < form name = 'frm' action = "http://www.baidu.com" > < input type = "text" name = "userName" /> < input type = "text" name = "" /> < input type = "button" value = "提交1" onclick = "exec('http://www.google.com')" />
</ form > userName 、passWord处都填写数据,点击button。
OK!连上google了,IE地址栏显示:http://www.google.com/?userName = 1passWord =1
-->
<!-- (9)使用 "button" 来提交表单——参考js exec1()中的相关注释 -->
< form name = 'frm' action = "http://www.google.com" > < input type = "text" name = "userName" /> < input type = "text" name = "passWord" /> < input type = "button" value = "提交1" onclick = "exec1('http://www.google.com')" />
</ form >
< form name = 'frm1' action = "http://www.hao123.com" > < input type = "text" name = "userName" />
</ form > </ body >
</ html >
总结期间找了些关于οnsubmit="return false;"的文章,作为资料也贴在下边。
URL:http://bbsanwei.javaeye.com/blog/271547
onSubmit的使用
在web开发中,我们经常会遇到,一点回车键表单就自己提交的问题,能不能禁用回车键呢,答案是肯定的.
Html代码
<from action="" method="post" onSubmit="return false">
...............
</from>
如果想在表单提交时,进行验证
Html代码
<html>
<head>
<script lanuage="javascript">
function check()
{
//验证不通过时
return false;
}
</script>
</head>
<body>
<from action="" method="post" onSubmit="return check()">
...............
</from>
</body>
</html>
<html>
<head>
<script lanuage="javascript">
function check()
{
//验证不通过时
return false;
}
</script>
</head>
<body>
<from action="" method="post" onSubmit="return check()">
...............
</from>
</body>
</html>
这样就会对表单进行验证再进行提交
要注意的是,千万不能写成
Html代码
<from action="" method="post" onSubmit="check()">
...............
</from>
因为check()不通过后会返回false, 因为onsubmit属性就像是<form>这个html对象的一个方法名,其值(一字符串)就是其方法体,默认返回true,所以还是相当于验证通过
记得对表单验证一定要写成这样
Html代码
<from action="" method="post" onSubmit="return check()">
...............
</from>
Html 中表单提交的一些知识总结——防止表单自动提交,以及submit和button提交表单的区别...相关推荐
- HTML 中表单form 的相关知识
在Javascript 中,页面上的每一对<form> 标记都解析为一个对象,即form 对象. 可以通过document.forms 获取以源顺序排列的文档中所有form 对象的集合. ...
- form表单的两种提交方式,submit和button的用法
1.当输入用户名和密码为空的时候,需要判断.这时候就用到了校验用户名和密码,这个需要在jsp的前端页面写:有两种方法,一种是用submit提交.一种是用button提交. 方法一: 在jsp的前端页面 ...
- input type=submit 和button的区别及表单提交
在一个页面上画一个按钮,有四种办法: 1 <input type="button" /> 这就是一个按钮.如果你不写javascript 的话,按下去什么也不会发生. ...
- javascript表单处理相关的知识总结(一)
在HTML中,表单是由元素来表示的,而在JavaScript中,表单对应的则是HTMLFormElement类型.HTMLFormElement继承了HTMLElement,它拥有HTML元素具有的默 ...
- 甘肃单招计算机应用基础知识,甘肃单招考试真题试卷
2021年高职单招升学一对一咨询高职单招刘老师:15310620950(微信) 2019年的高职单招考试正在悄悄地进行,不少同学基础差,不知道如何复习,想要看看单招考试真题试卷以便于自己备考,为此烦恼 ...
- Ext.Ajax.request和formPanel.getForm().submit()两种提交方法的异同:
Ext.Ajax.request和formPanel.getForm().submit()两种提交方法的异同: 1. 相同点: a) 都是使用异步提交的方式: b) 默认都是使用POST方式来提交数据 ...
- mysql 优化表 3000万_mysql优化:专题三、关于单表查询,可以这么优化
mysql优化:专题三.关于单表查询,可以这么优化 作者:PHPYuan 时间:2018-10-18 03:41:26 上篇讲解了「mysql优化专题」90%程序员都会忽略的增删改优化(2),相信大家 ...
- submit按钮html,html的两种提交按钮submit和button
转自:http://baiying.blog.51cto.com/1068039/1319784 html按钮有两种: 和登录 这两种在页面上看起来好像一样没什么区别,但是这两种是有区别的. 1,如果 ...
- JeePlus左树右表之 表单【右表】自动获取列表【左树 】中的id
JeePlus 左树右表中表单[右表]自动获取列表[左树 ]中的id 左树右表中表单[右表]和列表[左树 ]中有个关联.新建[右表]的时候每次都需要手动选择[左树 ]中的数据.并进行绑定. 方法: 1 ...
最新文章
- MATLAB对比度调节工具
- 傻瓜式Linux之一:系统安装
- Virtual Box 安装过程(卸载Vmware后)
- python如何读取文件夹下的子文件夹
- 网站中公用头部与尾部
- 【转】SVN trunk(主线) branch(分支) tag(标记) 用法详解和详细操作步骤
- 用户故事与敏捷开发方法笔记05
- 胜过对手,先从微笑开始
- 高数学习笔记:计算方向导数
- 试用期java_Java试用资源
- 扇贝有道180919每日一句
- NXP推出Icode DNA芯片,助力产品防伪鉴定
- win7修复计算机卡了,win7升级到win10后突然很卡的修复方法(图文)
- 使用物理学和领域知识的神经网络的无标签监督解读(上)
- 求所有质因子(Java)
- Android中EditText优先弹出数字输入法
- 涂鸦画板,监听touch事件,手机端
- Android 用官方SDK实现第三方(qq、微信、微博等)分享和登录
- 粉红色梦幻唯美的家庭相册模板
- 爱软测学员面试外企测试工程师英文面试小结
热门文章
- STC12C5A60S2片内存储器介绍
- 新买的Olmpus 7070,5.1照得几张照片
- ppsspp模拟java按键_ppsspp 手柄按键映射 北通 BTP
- java 数组 null值_数组的元素String在java中包含null
- java加载配置文件_java 读取和修改配置文件
- js 连mysql 延后_详解MySQL 主从同步延迟
- java miniui datagrid_miniui datagrid 的客户端分页解决方案
- python方法_详细解读Python中的__init__()方法
- mysql 执行计划不对_mysql tokudb执行计划走的不准确案例
- 如何在Linux,Ubuntu,CentOS上安装Java 14