2016-05-22 2 views
1

Мне нужно удалить префикс 'sidr-class-' из всех классов внутри родительского div sidr-inner. Sidr предоставляет возможность удалить все префиксы, но также удаляет префиксы из идентификаторов. Я хочу удалить только префиксы класса. HTML выглядит следующим образом:Sidr - удалить префикс из всех классов children, используя jQuery

<div class="sidr-inner"> 
 
     <div class="sidr-class-col-sm-12"> 
 
      <h2>Search by location</h2> 
 
      <form> 
 
      <input type="search" class="sidr-class-form-control" placeholder="Your location/postal code"> 
 
      <button type="submit" class="sidr-class-btn sidr-class-btn-default">Search</button> 
 
      </form> 
 
     </div> 
 
     </div>

На данный момент я использую следующий JQuery фрагмент кода для поиска и добавления классов, но это не удобно делать это с большим числом классов.

$(document).ready(function(){ 
 
     if($('div').hasClass('sidr-class-col-sm-12')) { 
 
      $('.sidr-class-col-sm-12').addClass('col-sm-12'); 
 
     } 
 
     });

Любое имеет представление о том, как получить это сделать с помощью JQuery или JavaScript? Заранее спасибо!

ответ

0

вы можете попробовать этот код:

$(document).ready(function(){ 
    $('.sidr-inner [class*="sidr-class"]').each(function(){ 
    var old_classes = $(this).attr('class'); 
    old_classes = old_classes.replace(/sidr-class-/g, ''); 
    $(this).attr('class', old_classes); 
    }); 
}); 

или этот код:

$(document).ready(function(){ 
    $('.sidr-inner [class*="sidr-class"]').each(function(){ 
    $(this).attr('class', change_class); 
    }); 
}); 

function change_class(i, v) 
{ 
    return v.replace(/sidr-class-/g, ''); 
} 

, чтобы решить вашу проблему.

+0

Работал как очарование! :) Благодаря! –

+0

Спасибо за БОГ. , пожалуйста, проголосуйте и выберите мой ответ, если ваша проблема решена. –

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