Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   radio кнопка чекалась при клике на нее Label (https://javascript.ru/forum/jquery/43245-radio-knopka-chekalas-pri-klike-na-nee-label.html)

cha0s 28.11.2013 14:49

radio кнопка чекалась при клике на нее Label
 
Есть вот такая интересная реализация http://jsfiddle.net/j3HKB/
то есть это по сути радио кнопки только они скрыты, вместо них лейбелы сделаны как кнопки, в данный момент почему-то работает grab текста только первого лайбела с двух вариантах, требуется получить текст лабела(А ТАК-ЖЕ ОТМЕТИТЬ radio кнопку рядом с ним которая скрыта) (HTML код менять нельзя, использовать имена тоже нельзя(они генерируются CMS), то есть только через $(this) где был клик по лайбелу получаем его текст и чекаем рядом с ней radio кнопку(буд-то мы на нее нажали).

вроде как понимаю проблема в самом селекторе $('[position_title ^= 2] input:radio').click так как мы кликаем не по радио кнопке а по ее label, но если делать $('[position_title ^= 2] label').click.... то и вовсе перестает все работать)

рони 28.11.2013 15:07

cha0s,
а то что id одинаковые и лейбы ссылаются на посторонние элементы это нормально?

cha0s 28.11.2013 15:33

Цитата:

Сообщение от рони (Сообщение 283299)
cha0s,
а то что id одинаковые и лейбы ссылаются на посторонние элементы это нормально?

Поправил) http://jsfiddle.net/j3HKB/2/ помоги как чекнуть radio кнопку рядом с ним
как понимаю будет в стиле что-то
$(this).prev('input:radio').click();

типа от текущего label ищет на шаг назад ближайшую к нему radio кнопку у которой id такой-же как у label for, и все это дело :checked -).

$(function (){
$('[position_title ^= 2] label').click(function (){ // клик на лейбл
$("#secondselect").html($(this).text()); // получение текста этого лейбл
//чекаем radio кнопку которая prev от label.
});
});

рони 28.11.2013 16:52

cha0s,
если сделать for нормально то и скрипта ненужно

cha0s 28.11.2013 17:04

аааа все спасибо! помог! тема закрыта!


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