javascript / jquery获取div的ID

时间:2013-12-10 13:51:32

标签: javascript jquery

我有两个这样的div:

First Div

<div class="carousel">
   <div class="item active" id="ZS125-48A">...</div>
   <div class="item" id="FFKG-34">...</div>
   <div class="item" id="DSSS-56">...</div>
   <div class="item" id="ZSFD-48A">...</div>
</div>

Second Div

<section class="contentBikeTabbedMenus">
   <div id="ZS125-48ATab" class="active" "="">...</div>
   <div id="FFKG-34Tab" class="" "="">...</div>
   <div id="DSSS-56Tab" class="" "="">...</div>
   <div id="ZSFD-48ATab" class="a" "="">...</div>
</section>

第一个div是我在页面上的旋转木马的简单版本,其中包含类似的项目。我能够获取活动项目的ID并将其存储准备好使用。

对于第二个div,我试图获取同一个div的id,并使用相同的id附加单词“Tab”。

继承我的代码:

    // get the carousel
    var $carousel = $(".carousel");
    var $active = $carousel.find(".item.active").attr('id');
    var $bikeId = $active;
    var $bikeIdTab = $bikeId + "Tab";

    //This prints out the correct id of the item with the class active.    

    var $tab = $(".contentBikeTabbedMenus");
    var $tabId = $tab.find($bikeIdTab);

    //i am trying to do the same here but i am having no success. 

    console.log($bikeIdTab);
    console.log($tabId);

逻辑上我认为我有想要找到的div的正确ID,但它没有返回。

如何获得与第一个div相同的第二个div的id。所以如果第一个id是ZS125-48A,我可以找到id为ZS125-48ATab的div。

由于

3 个答案:

答案 0 :(得分:1)

简单地替换

var $tabId = $tab.find($bikeIdTab);

var $tabId = $('#'+$bikeIdTab);

注意:如果不是$,我宁愿避免使用jQuery Object作为变量名的第一个字符:它可能会让我们感到困惑。

答案 1 :(得分:0)

您需要预先添加ID预选器(#)。例如:

var $tabId = $tab.find('#'+$bikeIdTab);

此外,由于ID应该是唯一的,因此无需使用find()。单独指定选择器就足够了:

var $tabId = $('#'+$bikeIdTab);

答案 2 :(得分:0)

你错过了#来找到第8行的ID:

// get the carousel
var $carousel = $(".carousel");
var $active = $carousel.find(".item.active").attr('id');
var $bikeId = $active;
var $bikeIdTab = $bikeId + "Tab";

//This prints out the correct id of the item with the class active.    

var $tab = $(".contentBikeTabbedMenus");
var $tabId = $tab.find('#' + $bikeIdTab);

//i am trying to do the same here but i am having no success. 

console.log($bikeIdTab);
console.log($tabId);