如何选择 ID 在另一个元素的属性中给出的元素?
<div id="_News" class="link active" data-wife="News">News</div>
我想用给定的 ID 获取元素data-wife
。我试过类似的东西
$("'#" + $(this).attr("data-wife") + "'").show();
但这对我来说看起来完全错误(当然,它不起作用..)。
如何选择 ID 在另一个元素的属性中给出的元素?
<div id="_News" class="link active" data-wife="News">News</div>
我想用给定的 ID 获取元素data-wife
。我试过类似的东西
$("'#" + $(this).attr("data-wife") + "'").show();
但这对我来说看起来完全错误(当然,它不起作用..)。
要获取“data-”属性的值,您可以使用.data()
:
$('#' + $(this).data('wife')).show();
请注意,您省略了“data-”前缀。在您的代码中,您引入了额外的引号层,这是不正确的。该库只需要一个字符串,而不是一个带有引号的字符串。
你加倍你的报价。您最终会得到一个解释如下的选择器:
$("'#News'")
试试这个:
$("#" + $(this).attr("data-wife")).show();
作为旁注,使用它data()
来访问data-
属性更简单,更可取:
$("#" + $(this).data("wife")).show();
$('#_News').click(function(){
$('#'+this.dataset.wife).show();
});
只是语法改变
$("#" + $(this).attr("data-wife")).show();