`

超链接触发onclick事件而不跳转

阅读更多

在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标签触发一个JavaScript事件,而不想让它执行默认的跳转行为。在这种情况下,我们需要采取措施来阻止A标签的默认跳转。以下是四种常见的解决方法: 1. **不用A标签,用CSS或JavaScript...

    html超链接a标签的href跳转跟onclick之间执行顺序示例介绍

    如描述中所述,`onclick`事件和`href`跳转之间的执行顺序是这样的:首先,`onclick`事件的JavaScript代码会被执行。如果`onclick`函数返回`false`,则浏览器将阻止默认的`href`跳转行为,即不会导航到`href`属性指定...

    Android如何通过TextView实现超链接的跳转

    当需要在TextView中嵌入超链接并实现点击跳转时,开发者通常会利用Android的`TextView`特性和`Linkify`类来完成这一功能。下面我们将详细介绍如何通过TextView实现超链接的跳转,并结合提供的`HyperLinkDemo`示例...

    使用a链接时如何阻止超链接跳转

    总的来说,阻止`&lt;a&gt;`标签的超链接跳转主要依赖于`onclick`事件的返回值和合理设置`href`属性。在编写HTML和JavaScript时,要考虑浏览器的兼容性、用户体验以及避免不必要的副作用,以确保代码的健壮性和良好的交互...

    点击超链接弹出一个信息框

    标题“点击超链接弹出一个信息框”涉及的是网页交互中的常见功能,即通过超链接触发JavaScript事件,显示一个信息提示框。在这个场景下,我们通常会使用HTML结合JavaScript来实现这一功能。以下是对这个主题的详细...

    给html超链接设置事件不使用href来完成跳

    总结来说,当在HTML中使用`&lt;a&gt;`标签触发JavaScript事件而不希望页面跳转时,可以通过添加`return false`或使用`javascript:void(0)`来阻止`href`的默认行为。这两种技术都是JavaScript和HTML交互的重要技巧,理解...

    为FLASH添加超链接

    4. **嵌入代码调整**:如果SWF是通过HTML页面嵌入的,你还可以在HTML的`&lt;object&gt;`或`&lt;embed&gt;`标签中添加`onclick`事件,实现链接跳转,但这只适用于用户点击Flash本身,而不是Flash内部的元素。 在处理这类问题时,...

    详解a标签添加onclick事件的几种方式

    - 使用`javascript:`协议作为`href`可能导致不必要的`window.onbeforeunload`事件触发。 - 在Internet Explorer中,这会导致GIF动画图片停止播放。 - W3C标准不建议在`href`中执行JavaScript语句。 ### 方法2: `...

    js 外观类似按钮的超链接

    这可以通过`addEventListener`方法实现,为每个超链接添加`onclick`事件处理函数: ```javascript document.querySelectorAll('.link-button').forEach(link =&gt; { link.addEventListener('click', function(event)...

    javascript禁止超链接跳转的方法

    在Web开发中,控制超链接的行为是一种常见的需求,尤其是在实现一些特效和交互的时候,我们可能会希望在点击链接时阻止浏览器默认的跳转行为,而执行一些JavaScript函数。本文将详细介绍如何使用JavaScript禁止...

    WebView跳转TextView中的超链接

    而TextView则用于展示纯文本信息,通常我们会在TextView中插入一些简单的格式化文本,比如超链接。当用户点击TextView中的超链接时,我们希望能够像WebView那样跳转到对应的网页。这个功能实现起来并不复杂,主要...

    a标签href属性与onclick事件使用实例

    总结起来,`&lt;a&gt;`标签的`href`属性和`onclick`事件都能实现页面跳转,但它们之间存在一些差异和兼容性问题。`href`属性更适用于简单的链接,而`onclick`则适合结合JavaScript进行复杂操作。在处理IE6等老版本浏览器时...

    a标签href属性和onclick事件的比较介绍

    默认情况下,点击标签会首先触发onclick事件,然后才是href属性下的动作。如果希望阻止标签默认的跳转行为,可以在onclick事件处理器的函数中返回false。这样,无论href属性指向哪里,页面都不会进行跳转。例如,一...

    javascript 不让鼠标事件触发

    要防止鼠标事件触发div上加了onclick事件时,点击内部超链接不触发div的事件,需要在a标签的事件处理函数中使用`event.stopPropagation()`来阻止事件冒泡,并使用`event.preventDefault()`阻止超链接默认的跳转行为...

    新浪博客跳转代码

    在这个例子中,`&lt;div&gt;`元素的`onclick`属性绑定了JavaScript函数`redirect`,当用户点击这个元素时,会触发`redirect`函数,从而实现页面跳转。 四、注意事项 1. 在新浪博客中使用JavaScript跳转时,要确保你的...

    a标签的href与onclick事件的区别详解

    也就是说,用户点击链接后,首先会触发`onclick`绑定的JavaScript函数,执行完毕后再执行`href`指定的动作,如页面跳转或者执行JavaScript代码。 2. **阻止默认行为**: 如果希望在`onclick`执行后阻止`href`的...

    javascript处理a标签超链接默认事件的方法

    `&lt;a&gt;`标签通常用于导航到其他页面或资源,但有时我们需要在用户点击链接时执行自定义操作,比如验证表单、显示模态窗口或执行其他交互逻辑,而不想立即触发页面跳转。本文将详细介绍如何使用JavaScript阻止`&lt;a&gt;`标签...

    HTML 按钮超链接

    超链接不仅可以用于跳转到其他网页,还可以下载文件、发送邮件等。例如,下载链接可以这样创建: ```html 下载文件 ``` 这里的`download`属性告诉浏览器这是一个本地下载链接。 在实际的网页设计中,我们通常需要...

Global site tag (gtag.js) - Google Analytics