在保留脚本功能的同时禁用jQuery链接

时间:2013-11-08 23:54:32

标签: javascript jquery

我有一个可点击链接表,其中每个TR也可以点击,转到与A标记相同的链接。

我遇到了点击A标签导致打开两个窗口的问题,两个窗口都转到同一个链接。如果我停用A标记,当我点击该链接时,TR上的脚本就无法运行。

<table class="dataTable">
<tbody>
    <tr class="odd">
        <td class=" sorting_1">
            <strong>
                <a href="http://www.google.ca/" target="_blank">Form1</a>
            </strong> - [HTML]
            <br /><span class="contentSummary"> form 1 summary</span>
        </td>
    </tr>
</tbody>

单击已禁用的A代码是否可以运行脚本?

$('.dataTable a').click(function() {
    return false;
});

$('.dataTable tbody tr').click(function () {
    var url = $(this).find('a').attr('href');
    window.open(url);
}).hover(function () {
    $(this).toggleClass('hover');
});

jsfiddle示例代码

1 个答案:

答案 0 :(得分:0)

看到你的tr是可点击的并处理事件我会将文本设置为看起来像一个链接。

一起删除一个标签

<span class="faux_link">Your Link Text</span>

使用文本修饰设置样式:下划线以及您想要的任何链接属性

然后更改你的tr以包含你需要的链接数据

<tr data-link="yourdestination.html">

然后稍微改变你的javascript

$('.dataTable tbody tr').click(function () {
    var url = $(this).data('link'); //this right here
    window.open(url);
}).hover(function () {
    $(this).toggleClass('hover');
});
相关问题