繁体   English   中英

为什么我的点击处理程序不起作用?

[英]Why doesn't my click handler work?

我有这个连结

<a class="tt-link" data-link="report.html?id=0">Open</a>

我想在新标签页中打开它,因此我在ready()中附加了一个处理程序

 $('.tt-link').click(function(event){
        console.log(event.target.data('link'));
        window.open('url', '_blank');
    });

这不能像我的选择器错误一样起作用,但事实并非如此。 无论如何,都没有控制台输出。

在您的jsfiddle示例中单击打开链接会在控制台中产生以下错误:

event.target.data不是函数

由于您使用的是jQuery,因此应使用$(this)访问该元素。

$(document).on('click', '.tt-link', function () {
  console.log($(this).data('link'));
  window.open('url', '_blank');
});

小提琴

您可能需要将代码放在$(function(){ ... } (但也可以使用$(this)代替event.target

$(function(){
    $('.tt-link').click(function(event){
        console.log($(this).data('link'));
        window.open('url', '_blank');
    });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM