Чекбоксы-картинки
Ребят, помогите пожалуйста, я уже наверное часа 4 потратил долбаясь с картинками-чекбоксами.
Задача: По клике на картинку выделяется чекбокс. При повтоном клике - снимается чекбокс. При третьем клике см строку 1 и т.д. Проблема: дублируется событие клик и у меня никак не получается отменить его, хотя пробовал уже и preventDefault и return false и чего только не пробовал. Вот код, который я начал сам писать после того как библиотека верстальщика дала понять, что второй раз чекбокс она уже не выберет. jQuery(document).ready(function(){ $(document).on("click", ".my_checkbox", function(e){ e.preventDefault(); change($(this)); } ); }); function change(el){ alert(1); var el = el, input = el.find("input").eq(0); if( !input.attr("checked") ) { alert(2); input.click(); } else{ input.click(); } } |
Это не проблема, проблема в том что вы начали-то хорошо, а потом перешли сразу к ответу, к своему варианту ответа. Так что после третьего щелчка происходит с чекбоксом?
|
Не до конца понял вопроса.
Если вопрос касается задачи, то после 3-го щелчка он должен нажиматься. Вообще это все делается для того что бы заменить чекбоксы картинками из макета. При этом настоящие чекбоксы должны существовать что бы отправлять данные на сервер Если вопрос касается того что происходит в МОЕМ коде, то он просто не выделяется и все. Не происходит ничего |
Rise, вот спасибо. И как я их из виду упустил лейблы.
Было уж обрадовался, но когда сделал все как хотел понял, что лейблы эти лагают... У меня в лейбле стоит фон картинкой и меняя положение фона он у меня выглядит либо чекнутым, либо нет. Фон меняется по клику. И вот проблема в том, что если быстро кликать на это дело, то галочка в лейбле и галочка в чекбоке перестают быть синхронизированными и скачут вразнобой. Получается рабочая, но не очень надежная штука... |
Вот видите, можете если захотите. Таким и должен быть вопрос - я хочу вот так, делаю вот это, а получается как всегда.
Показывайте кусок хтмля где оно. И надо видеть как переключается фон. В теории картинка отражает значение чек-бокса. То есть саму себя она менять не должна. Щелчок по картинке, не важно в какой обертке - вызывает изменение значение элемента, который уже показывает это изменение - картинкой. |
Часовой пояс GMT +3, время: 05:41. |