选择具有可见ID的所有超链接

时间:2011-12-30 02:21:06

标签: jquery hidden each

我的页面中有很多这样的超链接。其中一些是可见的,一些是隐藏的。

 <a class="close-reveal-modal" id="close_car2">&#215;</a>
 <a class="close-reveal-modal" id="close_car3">&#215;</a>
 <a class="close-reveal-modal" id="close_car4" style="display:none;" >&#215;</a>

所以现在我想迭代id以“close_”开头的所有可见超链接并获取索引,为超链接指定唯一的文本。

这是我的代码示例,但它不起作用。

$("a[id^='close_']").is(':visible').each(function (index) {
        if(index=='0')
        {
            $(this).text('test');
        }
    }); 

如何解决这个问题?谢谢

2 个答案:

答案 0 :(得分:2)

尝试:

$("a[id^='close_']:visible").each(function (index) {

来自“is()”的文档:

  

与其他过滤方法不同,.is()不会创建新的jQuery   宾语。相反,它允许您测试jQuery对象的内容   没有修改。

答案 1 :(得分:1)

这样的东西会起作用

$('a[id*="close_"]').each(function(i){
    if($(this).is(':visible')){
        if(i == 0){
            $(this).text('Link One');
        }
        if(i == 1){
             $(this).text('Link Two');
        }        
    }    
});

示例:http://jsfiddle.net/xC4Fp/1