Почему функция то срабатывает то нет
Здравствуйте!
Объясните, пожалуйста, почему в этом случае функция $('span.addtocart-button').on('click', function() ... срабатывает при клике на кнопку "Добавить в корзину", а в этом - нет. |
Функция срабатывает в обеих случаях, проблема в условии дальше.
Функция .text() возвращает объединенный текст элементов которые вы выбрали. $(".baget_select option:selected")вернет вам два элемента во втором случае, один - в первом, соответствено во втором случае .text() вернет вам "Выберите багетВыберите багет" |
Ясно. Благодарю. Вот рабочий вариант http://jsfiddle.net/mrnobody/rErNh/6/
|
Здравствуйте.
Подобная ситуация. На странице никак не вызывается обработчик $('span.addtocart-button').on('click', function(){... в этом файле на 40-й строке. Скажите, пожалуйста, почему? |
borus,
Вы где-то перезаписываете этот элемент (вероятно в момент добавления второй кнопки). Я при создании обработчика дабавил его в глобальную переменную "window.a", а после создания страницы сравнил его с элементом найденным по тому же селектору и мне выдало "false", что означает что это не тот элемент на который вы вешали обработчик. |
Цитата:
|
Цитата:
|
а как отследить местонахождение скрипта, который делает эту шутку?
|
borus,
Не, я был не прав. Там у инпута стоит disabled, его убираю и все работает |
tsigel,
странно, я убираю disabled у input.addtocart-button, нажимаю на "Добавить в корзину" и возникает окно о том, что добавилось, но скрипт призванный проверить, выбрано ли что-то в селекте не срабатывает. По крайней мере отладчик не останавливается внутри обсуждаемого обработчика на его первой строке: var $elSelect = $(this).parent().prev().find('.baget_select'); Вопрос прежний, почему отладчик не попадает внутрь обработчика, т.е. почему обработчик не работает? :) |
Воу!
http://stackoverflow.com/questions/3...disabled-input По ходу задизейбленный элемент не пускает всплытие событий! |
Цитата:
|
Цитата:
Цитата:
Внимательно посмотрите пример, там див который в верстке лежит рядом с инпутом а по стилям - точно сверху. |
Цитата:
По-моему, там говорится о том, что можно вешать на контейнер для большинства браузеров, за исключением FF: " Most browsers will propagate an event originating from the disabled element up the DOM tree, so event handlers could be placed on container elements" но в Хроме как выходит не работает Попробую как в примере. Странно. Такое ощущение, что Хром или все браузеры разом изменили подход к отключенным инпутам. Ведь раньше работало. Либо действительно есть скрипт, который пересоздает кнопку... Истина, приди к нам :) |
Часовой пояс GMT +3, время: 00:27. |