获得' id'当前可见的DIV

时间:2015-11-07 15:02:22

标签: php css

我在页面上有大约6 div,并且一次只能看到其中一个。在页面加载期间,我隐藏了除第一个之外的所有其他div。

这是我的HTML结构。

<div id="A1">
</div>

<div id="A2">
</div>

<div id="B1">
</div>

<div id="B2">
</div>

<div id="C1">
</div>

<div id="C1">
</div>

我这样做是为了隐藏它们: -

$(document).ready(function(){
    $("#A2").hide();
    $("#B1").hide();
    $("#B2").hide();
    $("#C1").hide();
    $("#C2").hide();
});

我如何获得可见div 的ID?我试过了: -

var current_div = $("div:visible");
current_div_id = current_div.attr('id');

输出: - 未定义

var current_div = $("div:visible");
current_div_id = current_div[0].id;

输出: - 空白

我出错了什么?

3 个答案:

答案 0 :(得分:1)

修正了它。发布解决方案以帮助未来的窥视。

似乎jquery无法使用上面的代码找到当前的div。我所做的是,为所有div添加了一个共同的类。像这样: -

<div id="A1" class="divs">
</div>

<div id="A2" class="divs">
</div>

<div id="B1" class="divs">
</div>

<div id="B2" class="divs">
</div>

<div id="C1" class="divs">
</div>

<div id="C1" class="divs">
</div>

现在我用这种方式修改了我的JS: -

var current_div = $(".divs:visible");
current_div_id = current_div[0].id;

工作。因此,如果您遇到同样的问题,请记住为所有div设置一个公共类。

答案 1 :(得分:0)

试试这个:

declare @Group int
select TOP 1 @Group = _Group
from ...

http://jsfiddle.net/neowar2x/4/

答案 2 :(得分:0)

好吧,你的代码实际上正在工作,我可以使用这两种方法获得id。您在此处遗漏了其他内容,请检查console您还能得到什么。

只有一个问题,因为您在页面id上复制了C1两次,所以无法获得一致的结果。

<div id="A1">
    A1
</div>

<div id="A2">
    A2
</div>

<div id="B1">
    B1
</div>

<div id="B2">
    B2
</div>

<div id="C1">
    C1
</div>

<div id="C2">
    C2
</div>
<p id = "one"></p>
<p id = "two"></p>

$(document).ready(function(){
    $("#A1").hide();
    $("#B1").hide();
    $("#B2").hide();
    $("#C1").hide();
    $("#C2").hide();
});
var current_div = $("div:visible");
current_div_id = current_div[0].id;
$("#one").text("ID: "+current_div_id);
var current_div = $("div:visible");
current_div_id = current_div.attr('id');
$("#two").text("ID using second method: "+current_div_id);

Fiddle