1

如何选择 ID 在另一个元素的属性中给出的元素?

<div id="_News" class="link active" data-wife="News">News</div>

我想用给定的 ID 获取元素data-wife。我试过类似的东西

$("'#" + $(this).attr("data-wife") + "'").show();

但这对我来说看起来完全错误(当然,它不起作用..)。

4

4 回答 4

4

要获取“data-”属性的值,您可以使用.data()

$('#' + $(this).data('wife')).show();

请注意,您省略了“data-”前缀。在您的代码中,您引入了额外的引号层,这是不正确的。该库只需要一个字符串,而不是一个带有引号的字符串。

于 2013-08-14T13:29:09.433 回答
4

你加倍你的报价。您最终会得到一个解释如下的选择器:

$("'#News'")

试试这个:

$("#" + $(this).attr("data-wife")).show();

作为旁注,使用它data()来访问data-属性更简单,更可取:

$("#" + $(this).data("wife")).show();
于 2013-08-14T13:28:57.353 回答
1

演示

$('#_News').click(function(){ 
  $('#'+this.dataset.wife).show();  
});
于 2013-08-14T13:43:13.973 回答
0

只是语法改变

$("#" + $(this).attr("data-wife")).show();
于 2013-08-14T13:37:19.610 回答