У меня есть куча divs, идентифицированная идентификатором, начинающимся со строки (kind = "brand"). Я хочу переключить видимость divs, щелкнув href внутри пролета. Я хочу, чтобы текст этой ссылки изменился с «SHOW» на «HIDE».Переключить кучу divs, также меняя ссылку
Без изменения текста, функция просто onle линия:
jQuery("#" + kind + "-" + value).toggle();
, но с текстом я не могу по добавить одну строку за другой, сезам почти 15 строк кода. Наверняка это намного проще.
Обновленный код
function show_hide(brand, value){
var show_hide_text = ["SHOW", "HIDE"];
var id_selected = jQuery("#" + brand + "-" + value).attr("id");
jQuery('div[id ^= "' + brand + '"]').each(function() {
if(this.id != id_selected){
jQuery(this).hide();
jQuery("#" + this.id.replace("-", "-show-")).html(show_hide_text[0]);
}else{
var visi = (jQuery("#" + brand + "-show-" + value).html() == show_hide_text[0]) ? 1 : 0;
jQuery("#" + brand + "-show-" + value).html(show_hide_text[visi]);
} // if
});
jQuery("#" + brand + "-" + value).toggle();
} // function
HTML-код будет идти, как это (только один DIV показан):
<div ><h3 >SUPER BRAND <a href="javascript: void(0);" onClick="hide_show('brand', 'Super-brand');"><span id=brand-show-Super-brand">SHOW</a></span></h3>
<div class="brand" id="brand-Super-brand">
<div>PRODUCT #1</div>
</div>
</div>
<div ><h3 >MEGA BRAND <a href="javascript: void(0);" onClick="hide_show('brand', 'Mega-brand');"><span id=brand-show-Mega-brand">SHOW</a></span></h3>
<div class="brand" id="brand-Mega-brand">
<div>PRODUCT #3</div>
</div>
</div>
...
Не могли бы вы предоставить examaple HTML-код? – jacqbus
HTML добавлен в вопрос – Cesar