js中 onsubmit="submitTest();" 阻止默认事件
来源:互联网 发布:java人才培训中心 编辑:程序博客网 时间:2024/06/07 19:16
<form action="index.jsp" method="post" onsubmit="submitTest();">
<script>
function submitTest(){
if(//做判断){
return true;
}else{
return false;
}
}
</script>
众所周知 onsubmit="return false"这个表单不会不会被提交,但是onsubmit="submitTest();" 只是执行了submitTest方法,但它没有对返回值进行处理,只有事件的返回值是false时 才会阻止默认事件。所以表单依然会被提交。
只有通过操作submitTest的返回值,才能正确控制表单是否提交。
正确如下 onsubmit="return submitTest()",
js中onsubmit()是作为方法存在的,js是松散的语言,不像java是强类型语言,它可以有返回值,也可以没有返回值。
转自: http://www.qingdou.me/2854.html用qwrap进行测试:W(‘#testa’).click(function(){ return false;});// 这是一个标准的绑定事件方法
ie可以阻止,但标准浏览器 chrome firefox等却直接发生了跳转
因为标准浏览器使用 addEventListener 绑定事件 而该方法是没有返回值的, 没有返回值, 返回值当然不会是false所以继续执行href 。
而ie使用attachEvent的方法这个方法是有returnValue。参见 http://msdn.microsoft.com/en-us/library/ie/aa703898(v=vs.85).aspx
所以成功阻止了默认事件,
那么使用addEventListener绑定事件 如何阻止呢 ?
虽然addEventListener 不能有返回值 但是它有一个方法 preventDefault() 专门用来阻止默认事件
jquery可以例外 只是它悄悄的调用了preventDefault() 和 stopPropagation(),所以在ie和标准浏览器下都可以阻止默认的js事件。
0 0
- js中 onsubmit="submitTest();" 阻止默认事件
- js中阻止默认事件
- js中阻止默认事件,阻止冒泡事件
- 4、阻止表单onsubmit事件的默认行为
- JS 阻止冒泡与阻止默认事件
- js阻止事件默认行为
- 在onsubmit事件中阻止表单的提交(vbs)
- js阻止默认事件与js阻止事件冒泡示例
- js 阻止默认事件 和事件冒泡
- js 阻止元素(文档)默认事件,阻止冒泡事件
- js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
- JS阻止用户默认事件的发生
- js事件(Event)之阻止默认操作
- javascript中阻止事件冒泡,阻止事件默认行为
- 标签中事件在js中获取,阻止冒泡和默认事件。兼容ie
- js 阻止默认浏览器行为和阻止事件冒泡
- js阻止默认行为和阻止事件冒泡
- js中阻止冒泡事件
- Stanford Machine Learning: (7). Clustering
- C#基础in,out,ref的作用和区别
- Windows窗口程序的生命周期
- Eclipse快捷键大全
- K-means算法
- js中 onsubmit="submitTest();" 阻止默认事件
- DMM基础
- 最长公共子序列(LCS)
- js的for in循环和java里的foreach循环的区别
- Cellular Structure - UVa 620 dp
- linux下获得root权限运行程序
- SMB协议的共享文件读写
- 浅析Java虚拟机结构与机制
- 2014中国大数据国际高峰论坛