A标签触发onclick事件而不跳转
来源:互联网 发布:台服dnf登陆器源码 编辑:程序博客网 时间:2024/05/22 03:36
文章转载自:http://blog.csdn.net/zhouyong0/article/details/6457170
在web页面开发时,我们经常会遇到下列情况:
1.一个标签仅仅是要触发onclick行为;
2.表现上要有鼠标的pointer指针显示,或者其他类似a标签的视觉效果。
比如执行删除操作时,为了避免误操作,我们要弹出对话框让用户确定是否删除。因此我们经常会用链接<a></a>形式代替<button> 触发onclick事件。
代码如下:
<script type="text/javascript"> function del(){ if(confirm("确定删除该记录?")){ parent.window.location="执行删除.jsp"; return true; } return false; }</script><a href="" target="mainFrame" class="STYLE4" onclick="del()" >删除</a>
这样做的后果是js代码会跳转到"执行删除.jsp"页面,而<a>标签也会跳转打开一个空页面。因为html本身对 <a>标签的href属性做了处理,所以就会先执行我们自己定义的方法,接着再运行它自身的方法(跳转的方法)。
解决方法主要有四种,如下:
1. 不用a标签,设定css或用js来表现(有点复杂);
2. 用a标签,onclick属性或onclick事件中返回false;(个人喜欢)
如:<a href="" target="mainFrame" class="STYLE4" onclick="del();return false" >删除</a>
这是个执行顺序的问题,<a>这个标签的执行顺序应该是先执行onclick 的脚本,最后才进行href参数指定页面的跳转。在onclick中返回false,就可以中止<a>标签的工作流程,也就是不让页面跳转到href参数指定的页面。
3. 用href="javascript:void(0)"这种伪协议;(这种伪协议,少写的好)
即:<a href="javascript:void(0)" target="mainFrame" class="STYLE4" onclick="del()" >删除</a>
4. <a href="#" class="STYLE4" onclick="del()" >删除</a>。(总是跳转到当前页面顶部,当页面内容较多时,还是会有跳转的感觉)
备注:我个人觉得熟悉浏览器对空间默认操作流程还是很重要的,这样自己就不会迷茫而多做一些“无谓”的尝试了
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- A标签触发onclick事件而不跳转
- 用链接标签触发onclick事件而不跳转
- 用链接标签触发onclick事件而不跳转
- a标签触发onclick事件而不跳转弹窗的n多种方法
- A标签触发onclick事件而不跳转的多种解决方法
- A标签触发onclick事件而不跳转的多种解决方法
- 深入A标签点击触发事件而不跳转的详解
- input替换为a标签,onclick事件不触发
- html <a>标签触发不了onclick()事件
- <a>标签出发onclick时间不跳转
- jquery触发<a>标签跳转事件
- 火狐下触发 a标签的onclick事件
- 自定义对话框实现
- div ul li模拟下拉选项(option标签)
- 线程中的死锁问题
- 超易药品进销存软件 V3.11
- TextRange对象的学习(一)
- A标签触发onclick事件而不跳转
- 三个有关jsp页面操作的小错误 ¶
- Google Chart API 生成图片
- jquery 选中checkbox兼容问题
- 检测哪个HTML标签触发的事件
- div背景半透明 覆盖整个可视区域的遮罩层效果
- jquery.qtip插件的简单入门
- Mysql 5.6 双主配置 自动同步脚本
- jQuery模糊知识点