获取特定的属性值

时间:2015-01-26 14:25:11

标签: jquery

我有一个href格式为:

<a href class='link' location='USA'>USA</a>

然后我使用JQuery尝试获取location的值并将其传递给新页面。

$(".link").click( function() {
   var location = $(this).attr("location").val();
   Popup('open.php?action=region&location=' + location,'open','300','200','yes');return false;
});

这不起作用。

我没有通过地点的价值。

有人可以告诉我做错了什么!

由于

1 个答案:

答案 0 :(得分:3)

首先发明不符合标准的属性将意味着您的HTML无效,这可能导致UI和JS问题。使用data属性将自定义数据存储在元素中:

<a href="#" class='link' data-location='USA'>USA</a>

然后,您可以使用data()

在点击处理程序中访问此内容
$(".link").click(function(e) {
    e.preventDefault(); // stop the default link behaviour
    var location = $(this).data("location");
    Popup('open.php?action=region&location=' + location, 'open', '300', '200', 'yes');
    return false;
});

仅供参考,当您通过attr()访问元素的属性时,您不需要在其上调用val(),例如:

var foo = $("#element").attr("foo"); 
console.log(foo); // = "bar"