1

我想在不使用旋转栅门的情况下捕获链接点击并存储在我的数据库中。当前代码

$( ".ads-box a" ).click(function( event ) {
  event.preventDefault();
  var href = $(this).find('a').attr('href');
  var id = $(this).find('a').attr('id')
  console.log(href);
  console.log(id);
  console.log(this);
});

<div class="ads-box" id="adbox-35"><a href="http://www.makeitrightnola.org" id="ad-35" target="_blank"><img src="/g/shows/sidebar/83172823_ad_image.png" alt="Make It Right"></a></div>

在控制台中生成

undefined
undefined
<a href="http://www.makeitrightnola.org" id="ad-35" target="_blank"><img src="/g/shows/sidebar/83172823_ad_image.png" alt="Make It Right"></a>

如何访问链接的属性?出了什么问题?

4

1 回答 1

1

删除.find('a')in var href = $(this).find('a').attr('href');。您已经在一个<a>元素上单击“ing”,所以它就足够了$(this).attr('href');

试试这个:

$( ".ads-box a" ).click(function( event ) {
  event.preventDefault();
  var href = this.href;  // i used vanilla JS here
  var id = this.id;      // i used vanilla JS here
  console.log(href);
  console.log(id);
  console.log(this);
});

演示在这里

于 2013-10-17T20:18:10.300 回答