如何查找具有特定文本的li的索引值?

时间:2013-10-30 07:07:46

标签: php jquery html

<div id="vertical-tabs">
        <ul class="tabs">

            <li id="tbli" ><a href="bid=32&bname=City+Cinema&cid=11" target="__blank">City Cinema</a></li>

            <li id="tbli" ><a href="bid=33&bname=Happy+Land&cid=11" target="__blank">Happy Land</a></li>

            <li id="tbli" ><a href="bid=34&bname=I+Race&cid=11" target="__blank">I Race</a></li>

        </ul>
</div>

上面是我的html。我需要知道包含文本Happy Land的li的索引值。所以我可以在我的其他功能中使用它 tabClick($("#vertical-tabs li:eq(1)"));其中eq(1)是索引值。我需要根据其中的文本动态更改它。

2 个答案:

答案 0 :(得分:0)

尝试.index()喜欢

$('.tabs li a').each(function(){
     if($(this).text() == "Happy Land") {
         alert($(this).index());
     }
});

并确保Ids 唯一

或者您也可以尝试使用:contains

var indx = $('.tabs li a:contains("Happy Lane")').index()
alert(indx);

答案 1 :(得分:0)

您可以使用.index()

$('li:contains(Happy Land)').index()

演示:Fiddle

更准确的版本将是

var index = $('.tabs li').filter(function(){
    return $.trim($(this).text()) == 'Happy Land'
}).index();

console.log('index', index)

演示:Fiddle