Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Не запускается JS событие для формы (https://javascript.ru/forum/events/43152-ne-zapuskaetsya-js-sobytie-dlya-formy.html)

dikucher 24.11.2013 16:50

Не запускается JS событие для формы
 
сайт http://dk.farla.ru/
по кнопке Регистрация ( верху справа ) запускается модальник.
в нем форма, на <select> повешан скрипт для оформления ( возможно проблема как раз из-за него )
В верхнем <select> ( Производитель, Торговая компания, Я ищу работу, Покупатель) нужно реализовать следующую логику, чтобы при клике на конкретный пункт, происходило скрытие текущие формы, и появление другой
вот выделил код селекта
<select class="select-field chosen-select">
                <option class="producer-option">Производитель</option>
                <option class="buyer-option">Покупатель</option>
                <option class="company-option">Торговая компания</option>
                <option class="job-option">Я ищу работу</option>
</select>


а вот что я пытаюсь повешать на JS

$("#company-option").click(function(){
        $('.producer-form').fadeOut(150);
        $('.company-form').fadeIn(150);
    })


но почему то событие JS не работает

Deff 24.11.2013 17:02

$(".select-field.chosen-select").change(function(){
   if($(this).find('.company-option').is(':selected')) {
        alert('выбран!');
        //Тут чего-то выполняем 
   }
   return false;
})

dikucher 25.11.2013 11:26

Deff, спасибо, получилось реализовать именно то, что я хотел. Но появилась ( или осталась ) одна проблема
тот же сайт , переход по кнопке Регистрация ( справа вверху )
Логика следующая, при выборе Верхнего селекта ( 1-го из четырех ) скрыватеся текущая форма, и открывается новая ( предназначенная для выбранного селекта ) - это собственно то, что я хотел сделать, когда задавал свой первый вопрос.
Проблема - при выборе <option> у верхнего селекта, формы скрываются и появляются правильно, но вот как то странно подтягивается значение выбранного <option> ( первые пару раз происходит все правильно, но потом идет этот не понятный сбой )
я проверил, отключив скрипт который задает оформеление селекта, проблема остается.

$(".select-field.chosen-select").change(function(){
        if($(this).find('.job-option').is(':selected')) {
            $('.form-standard').fadeOut(0);
            $('.job-form').fadeIn(0);
        }
        if($(this).find('.producer-option').is(':selected')) {
            $('.form-standard').fadeOut(0);
            $('.producer-form').fadeIn(0);
        }
        if($(this).find('.buyer-option').is(':selected')) {
            $('.form-standard').fadeOut(0);
            $('.buyer-form').fadeIn(0);
        }
        if($(this).find('.company-option').is(':selected')) {
            $('.form-standard').fadeOut(0);
            $('.company-form').fadeIn(0);
        }

        return false;
    })

dikucher 25.11.2013 20:43

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

dikucher 25.11.2013 20:54

хм, причем это "ошибка" происходит после того как я четыре раза выберу разные option

Deff 25.11.2013 21:37

dikucher,
1. Возможно из-за анимации ?
Пробуйте вместо
fadeOut(0);
fadeIn(0);
Использовать hide();show();

Если не поможет, выложите ссылку на тестовик в инете

dikucher 26.11.2013 00:29

не помогло, вот сайт
dk.farla.ru


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