jQuery:获取title和href值作为变量

jQuery:获取title和href值作为变量,jquery,variables,Jquery,Variables,我有一个带有标题和href值的链接列表。我希望能够分别得到这些值,但我总是得到第一个链接的值。为什么呢? . 如您所见,当单击任何链接时,您总是从第一个链接获取值。我想设置这些变量是不够的: var title = $('.mg_phones').attr('title'); var url = $('.mg_phones').attr('href'); 有什么想法吗?您需要将代码更改为: var title = $(this).attr('title').toLowerCase(); var

我有一个带有标题和href值的链接列表。我希望能够分别得到这些值,但我总是得到第一个链接的值。为什么呢? . 如您所见,当单击任何链接时,您总是从第一个链接获取值。我想设置这些变量是不够的:

var title = $('.mg_phones').attr('title');
var url = $('.mg_phones').attr('href');

有什么想法吗?

您需要将代码更改为:

var title = $(this).attr('title').toLowerCase();
var url = $(this).attr('href');

您必须引用已单击的元素:

var title = $(this).attr('title');
var url = $(this).attr('href');
改用
$(this)
。问题是,
$('.mg_phones')
是该类中所有元素的数组,访问
$('.mg_phones')。attr(…)
会选择第一个元素,因为它不知道您想要哪个元素

但是
$(this)
指的是此上下文中当前单击的项目

$('.mg_phones').click(function (event) {
    event.preventDefault();
    var title = $(this).attr('title').toLowerCase(); //this changed
    var url = $(this).attr('href');  //this changed
      if (title.length != 0) {
          $('#test').text(title + ": " + url);
 }