获取外部元素的ID

时间:2012-07-09 12:11:27

标签: jquery jquery-ui jquery-selectors jquery-ui-tabs jquery-tabs

如果我动态生成与此类似的HTML?

<li class="ui-state-default ui-corner-top" id="tab_pg_4">
    <a href="#ui-tabs-8"><span>Group5</span></a>
</li>

<li class="ui-state-default ui-corner-top" id="tab_pg_5">
    <a href="#ui-tabs-10"><span>Group4</span></a>
</li>

<li class="ui-state-default ui-corner-top" id="tab_pg_6">
    <a href="#ui-tabs-19"><span>Group8</span></a>
</li>

我有一个包含字符串Group4

的javascript变量

如何console.log或提醒tab_pg_5

4 个答案:

答案 0 :(得分:1)

使用jquery函数.closest()查找最匹配的祖先。

var myVar = 'Group4';
console.log($('a[href^="#ui-tabs-"] span:contains("' + myVar + '")').closest('li').attr('id'));

答案 1 :(得分:0)

这样的事情应该足够了。如果围绕它<ul>,您可以使选择器更具体。

var myId = 'Group4';
var elementId = $('li:contains(' + myId + ')').attr('id');

答案 2 :(得分:0)

您只需添加点击事件并使用最近的

$('a').click(function(){
   var lid = $(this).closest('li').attr('id');
    alert(lid);
});

WORKING DEMO

答案 3 :(得分:-1)

哦,是的,我完全不理解这个问题,所以:

$('a span').each(function({ 
    if ((this).html() == 'Group 4'))
        var = $(this).parent().parent();
});