Как повесить class на radio button без добавления для него событий типа onchange
<div class="results"> <div id="results"> <div position_title="1" id="option-242" class="option radio"> <div class="fields" style="margin-top:1px;"> <input style="display:none;" type="radio" name="option[242]" value="92" id="option-value-92"> <label class="spanradio" for="option-value-92">5 x 7</label> <input style="display:none;" type="radio" name="option[242]" value="93" id="option-value-93"> <label class="spanradio" for="option-value-93">6 x 6</label> </div> </div> </div> </div> Как при помощи JS при клике на label(radio кнопка все равно выделяется когда жмешь на label), добавился класс на этот label, без ввода всяких там вешаний на label onchange/onclick и т.д, зона действия начинается с $('.results') все радио кнопки которые в нем находятся(а их может быть не одна), при клике по label добавляли класс на этот label, при выборе другого label(радио кнопки), естественно класс уже ставился на эту, так как 2 выбрано кнопки не может быть одновременно. ТИПА что-то $('#results input:radio').change(function() { // все радио кнопки которые находятся в контейнере #results $(this).addClass("myclass"); // на тот label(по идее они работают в связке с radio кнопкой - кнопка радио всеравно чекается от того что я жму по label рядом с ней который) который был нажат вешается класс. }); |
Цитата:
|
Цитата:
то есть сами радио кнопки display:none; а это их label такие как кнопки сделаны, при клике на label соответственно и выделывается radio кнопка просто этого не видно, ну и в конце передается то что выбрано, мне надо при клике по этому label(или radio кнопке - она ведь так и так выделяется), на этот label вешался класс:), короче вешался там где radio button как :checked:) я имел введу что такой вариант мне не подойдет типа: <input style="display:none;" type="radio" name="option[242]" value="92" id="option-value-92"> <label ONCLICK="......." class="spanradio" for="option-value-92">5 x 7</label> а вот типа такого $('......').change(function() подойдет, где не нужно дописывать к каждому label onclick=""... вообщем надеюсь что я не запутал))) |
Цитата:
Коли у тебя клики по лабелям идут... Цитата:
|
Цитата:
Цитата:
<!DOCTYPE html> <html> <head> <script src='http://code.jquery.com/jquery-latest.js'></script> <!-- <link rel='stylesheet type=text/css href=tmp.css' /> --> <style type='text/css'> .on { color: green; } </style> <script type='text/javascript'> $(function (){ $('.results').on('click','label',function (){ $(this.parentNode).find('label.on').removeClass('on'); $(this).addClass('on'); }); }); </script> </head> <body> <div class="results"> <div id="results"> <div position_title="1" id="option-242" class="option radio"> <div class="fields" style="margin-top:1px;"> <input style="display:none;" type="radio" name="option[242]" value="92" id="option-value-92"> <label class="spanradio" for="option-value-92">5 x 7</label> <input style="display:none;" type="radio" name="option[242]" value="93" id="option-value-93"> <label class="spanradio" for="option-value-93">6 x 6</label> </div> </div> </div> </div> </body> </html> |
Спасибо! то что нужно! а главное просто!:thanks: Вопрос закрыт.
|
Цитата:
|
Часовой пояс GMT +3, время: 04:36. |