Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Упрощение скрипта отображения div (https://javascript.ru/forum/misc/69200-uproshhenie-skripta-otobrazheniya-div.html)

PonyS 05.06.2017 18:22

Упрощение скрипта отображения div
 
Всем привет! Есть такой код
<script>
function Selected(a) {
  var label = a.value;
    if (label=="col1") {
       document.getElementById('col1').style.display='block';
   } else {
       document.getElementById('col1').style.display='none';
   } 
    if (label=="col2") {
       document.getElementById('col2').style.display='block';
   } else {
       document.getElementById('col2').style.display='none';
   } 
    if (label=="col3") {
       document.getElementById('col3').style.display='block';
   } else {
       document.getElementById('col3').style.display='none';
   } 
}
</script>


По клику на radio - отображается нужный div. Я сделал так что каждый radio имеет value одинаковый с id блока который нужно показать, меняется только цифра, и их может быть от 1 до 30 примерно, помогите пожалуйста упростить этот код чтобы не приходилось писать под каждый radio и div новый код... Заранее спасибо! Вот что я пробовал, но логики не особо в нем вижу:
<script>
function Selected(a) {
  var label = a.value;
    if (label==label) {
       document.getElementById(label).style.display='block';
   } else {
       document.getElementById(label).style.display='none';
   } 
}
</script>

рони 05.06.2017 21:51

j0hnik,
:blink:

рони 05.06.2017 21:54

PonyS,
var label = 'col1';
function Selected(a) {
       document.getElementById(label).style.display='none';
       label = a.value;
       document.getElementById(label).style.display='block';
}

PonyS 05.06.2017 22:07

Цитата:

Сообщение от рони (Сообщение 454607)
PonyS,
var label = 'col1';
function Selected(a) {
       document.getElementById(label).style.display='none';
       label = a.value;
       document.getElementById(label).style.display='block';
}

Спасибо, то что нужно

j0hnik 05.06.2017 22:13

Цитата:

Сообщение от рони (Сообщение 454606)
j0hnik,
:blink:

не так прочитал, sorry

ksa 06.06.2017 09:01

j0hnik, у тебя по многим темам есть удаленные сообщения. :D Не части.

j0hnik 06.06.2017 12:10

Цитата:

Сообщение от ksa (Сообщение 454629)
j0hnik, у тебя по многим темам есть удаленные сообщения. :D Не части.

Или санкции? :agree:

ksa 06.06.2017 13:23

Цитата:

Сообщение от j0hnik
Или санкции?

Просто зачем так "спамить"?

PonyS 06.06.2017 14:42

Цитата:

Сообщение от PonyS (Сообщение 454612)
Спасибо, то что нужно

Подскажите пожалуйста, а если первый col1 - изначально на странице как display:block, а остальные скрытые, и по клику на radio другой от col1 будет внизу отображаться нужный col2 к примеру, но col1 при этом не скрылся, а скрываеться уже после 2-3х раз выбора radio(запускается цепочка работы скрипта), как быть в этом случае? Заранее спасибо!

рони 06.06.2017 17:16

PonyS,
не осилил, скрипту без разницы какой блок изначально открыт или закрыт,и что в label,главное чтоб было какое -то id со страницы в label.


Часовой пояс GMT +3, время: 04:15.