使用div中的唯一id来显示/隐藏jQuery

时间:2011-06-15 00:35:02

标签: jquery html unique

我在编写代码以捕获'id'名称时遇到了一些困难,无法打开请求。

我有三个盒子:

<div>
<h3>Box 1</h3>
<p><a id="box2" href="#">Show Box 2</a></p>
</div>

<div id="box2">
<h3>Box 2</h3>
<p><a id="box3" href="#">Show Box 3</a></p>
</div>

<div id="box3">
<h3>Box 3</h3>
<p>TBD</p>
</div>

我正试图从标签中抓住'id'来打开那个'id'所尊重的人。例如,id =“box2”将打开div id =“box2”。

$(document).ready(function() {
$("div#" + getName).hide();
$('a#' + getName).click(function() {
    $('div#' + getName).show();
    return false;
  });
});

我不确定jQuery是对单引号还是双引号敏感,或者我是否正在接近这个错误。任何帮助表示赞赏。祝你有个美好的一天!

2 个答案:

答案 0 :(得分:3)

您不能对页面上的多个元素使用相同的“id”值。这就是“id”的含义。

将一个元素与另一个元素相关联的一种方法是使用“data-”属性:

<button data-friend="something">Click Me</button>

<div id='something'> ... </div>

jQuery库将通过“.data()”API为您提供“data-”属性的值:

var friend = $('button').data('something');
var friendDiv = $('#' + friend);

您还可以使用类值将元素关联在一起。

答案 1 :(得分:0)

ID必须是唯一的。尝试使用类作为选择器。

$("div." + getClass).hide();