正则表达式 - 用于捕获所有href

时间:2015-04-08 13:45:35

标签: javascript jquery html css

我需要做这个代码

if($.trim($('#id_title_de').val())){
    $('a[href="#tab_id_title_de"]').css('background','green').css('color','yellow');
}

对于55种语言,其中tab_id_title_de的最后一部分 - 每种语言的de都发生了变化..

我用更短的方式尝试了这个:

if($.trim($("[id^='id_title']").val())){
    $('a[href^="#tab_id_title"]').css('background','green').css('color','yellow');
}

但即使那些$.trim($('#id_title_xx').val())为空的人也会受到影响。

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

此处没有正则表达式,您使用的'属性以'开头。选择。

那就是说,你得到的问题是因为选择器将选择一组元素,而不是原始代码所做的单个元素。因此,你需要循环它们。试试这个:

$("[id^='id_title']").each(function() {
    var lang = this.id.split('_').pop();
    if ($.trim($(this).val())) {
        $('#tab_id_title_' + lang).css('background', 'green').css('color', 'yellow');
    }
});

Example fiddle