当用户单击锚标记时,防止默认事件(浏览器导航)

时间:2016-05-11 14:55:45

标签: javascript jquery html

我在html中有一个表格,如下所示。我想要的是阻止用户在通过Javascript或Jquery点击John时指向google.com。我尝试过如下,但它不起作用。我的错误在哪里?

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
    <script>
        $(function() {
           $(".myTDclass").click(function(event) {
               event.preventDefault();
               alert('prevented');
           });
        });
    </script>
</head>
<body>
<table>
   <tr class="myTRClass">
    <td><a href='www.google.com' class='myTDclass'>John</a></td>
    <td>Smith</td>
   </tr>
</table>
</body>
</html>

onclick ='false'是一个解决方案,我知道。但我需要它在js或jquery。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

这里有几个问题。首先,jQuery代码出于某种未知原因,在style标记中应该位于script标记中。其次,你还没有在页面中包含jQuery。最后,如果将代码放在文档的head中,则代码本身需要位于document.ready事件处理程序中。

一旦你解决了这些问题,它应该可以正常工作。试试这个:

<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
    <script>
        $(function() {
           $(".myTDclass").click(function(event) {
               event.preventDefault();
               alert('prevented');
           });
        });
    </script>
</head>