如何将自定义属性添加到<span>并在JavaScript中读取?</span>

时间:2014-06-18 01:11:22

标签: javascript jquery html

我希望有一个jQuery / PHP网站,它使用<span>个元素作为导航链接。我需要使用value属性

$(".navLink").click(function() {
    window.location.href = "/index.php?page=" + this.value //or whatever
});

我无法使用this.id,因为它与其他HTML元素冲突。有没有办法创建和使用“虚拟”HTML属性?

3 个答案:

答案 0 :(得分:8)

使用data- *属性。像data-href这样的东西会很好。 jQuery为您提供了一个很好的界面来读取值。

this.data('href')

将读取

的值
data-href="some.value"

有关详情,请参阅http://api.jquery.com/jquery.data/

答案 1 :(得分:3)

您可以使用data-。因此,在HTML中,您可以将其定义为:

<span class="navLink" data-link="google.com">click me</span>

然后通过jQuery你做:

window.location.href = "/index.php?page=" + $(this).data("link");

答案 2 :(得分:1)

纯js:

el.setAttribute('value', the-value);

jquery的:

$(el).attr('value', the-value);

但更好地将诸如my-value之类的内容轻松识别为属性的名称,以避免冲突并使其更容易在代码中注意