2014-02-03 5 views
0

Что я хочу, если в href «www.1link.com» нет слова «ссылка», все верхние классы 1-6 заменяются на classdefault.Выбор, удаление jQuery на основе подстановочного знака

Также отличный код, который делает то же самое, кроме добавления класса «defaultclass», удаляет все классы 1-6 пустым.

Это то, что я пытался до сих пор, и он не работал

http://jsfiddle.net/yLxXn/2/

$(document).ready(function() { 

if ($('a[href$="link"]')) { 
    // do something here 

$("[class^=content]").attr("class", "classdefault"); 

} 


}); 

ответ

0

Попробуйте что-то вроде этого:

if ($('a').attr('href').indexOf('link') != -1) { 
// other code 
} 
0

UPDATE

Если вы хотите, чтобы это произошло, если оно не содержит «ссылку», измените >= на <=. В следующем:

Для замены всех классов:

$('div').find('a').each(function(){ 
    var hrefString = $(this).attr('href'); 
    if (hrefString.indexOf("link") <= 0){ 
     $('[class^=class]').attr('class', 'classdefault'); 
    } 
}); 

Для удаления всех классов:

$('div').find('a').each(function(){ 
    var hrefString = $(this).attr('href'); 
    if (hrefString.indexOf("link") <= 0){ 
     $('[class^=class]').removeClass(); 
    } 
}); 
+0

Привет Я искал противоположное, если она не содержит «ссылку», а затем удалить класс или изменить класс. –

+0

@DavidSmith, чтобы получить обратное, измените '> =' на '<=' См. Мой обновленный ответ. – timo

Смежные вопросы