foxss |
|
---|---|
есть документ <blok1> <blok2>
<radio1> </blok2> <blok3> <radio2> </blok3> работать должно так:
при выборе п.1 селекта должен показатся блок2 а блок3 должен показыватся в зависимости от выбора радио1
при выборе п.2 селекта должен показатся блок2 а блок3 НЕ должен показыватся в зависимости от выбора радио1
однако если выбрать в селекте сначала п.1 а потом п.2 то блок3 ведет себя так же как и при выборе п.1
вот мой скрипт
$('#parametrs select').change(function(){ $('.hide').hide(300); $out = $(this).val(); if ($out == 'blok3') { $('#blok2').show(300); } if ($out == 'blok2') { $('#blok2').show(300); $('#blok2 input').change(function() { $outs = $(this).val(); if ($outs == 'скрыть блок'){ $('#blok3').hide(300); }else{ $('#blok3').show(300); } }); } }); |
|
Отредактировано: foxss (01.05.2017 00:15, 8 лет назад) |
DenDevin |
|
---|---|
Предоставьте весь хтмл и яваскрипт, ато не понятно, какие элементы отлавливает скрипт.
|
foxss |
|
---|---|
ну вот http://jsfiddle.net/ng8vwr4z/ полный ХТМЛ и скрипт но че это изменит я хз в 1 сообщении практически тоже самое. |
|
Отредактировано: foxss (26.05.2017 04:58, 7 лет назад) |
DenDevin |
|
---|---|
Во первых, у вас ошибка в теге лейбл, правильно писать нужно . Во вторых, перед тем как показывать или скрывать блок, я думаю нужно проверять "выбранность" радиокнопки. Судя по вашим условиям, блок 3 должен быть видимым или скрытым в зависимости от выбора радио.
Добавлено 19 минут спустя: Присвойте радиобосам value, определяйте какой выбран сейчас и от этого условия скрывайте или показывайте блок. Просто проверка if(out=="скрыть блок") не совсем корректна, мне кажется. лучше использовать проверку на уникальное value , написанное латиницей, и не фразой, а одним словом. |
|
Отредактировано: DenDevin (27.04.2017 20:22, 8 лет назад) |
foxss |
|
---|---|
ну вот https://jsfiddle.net/ng8vwr4z/ полный ХТМЛ и скрипт но че это изменит я хз в 1 сообщении практически тоже самое. Добавлено 6 минут спустя: выбераем в селекте blok3 и выбор радио ничего не меняет. Все ОК так и задумано. Добавлено 8 минут спустя: #42846 DenDevin: в оригенале так и есть. просто постить весь оригинальный скрипт не вижу смысла. там, овер 600 строчек из конструкций типа Добавлено 3 минуты спустя: Зы в 1 посте была очепяпятка в коде скрипта, сори, исправил. |
|
Отредактировано: foxss (27.04.2017 20:56, 8 лет назад) |
DenDevin |
|
---|---|
Вам нужно узнать, какой if отрабатывает первым при смене селекта, попробуйте сначала в первый иф поставить алерт, потом во второй. Так вы узнаете, где какое событие вызывается при смене селекта.
Добавлено 3 минуты спустя: Также попррбуйте потавить алерт для проверки в смену радиобокса, чтобы узнать, вызывается ли событие при включении в селекте 3 блока |
foxss |
|
---|---|
Короче переписал скрипт... пункты которые есть в селекте: |
|
Отредактировано: foxss (26.05.2017 04:56, 7 лет назад) |