ОБНОВЛЕНИЕ: Проблема более сложная. Похоже, это связано с тем, что заголовок аккордеона неправильно передает события .click и не имеет ничего общего с селектором :checked. Весь этот пример отлично работает в тестовом файле.
См. раздел Радио-вход в заголовке проблемы с аккордеоном ?BUG
У меня есть форма с несколькими радиоэлементами, каждое из которых называется "rx" (где x равно 1..3), применяется .buttonset(). с участием
e.g id=3
alert ($('input:radio[name=r'+id+']').val());
//returns value of the first radio in the set
alert ($('input:radio[name=r'+id+']:checked').val());
//returns 'undefined', even one of the radios is checked.
и я пробовал оба :checked')[0]
, :checked').get(0)
, :checked').attr('id')
Интересно, почему первый метод возвращает значение... Это как-то связано с добавлением классов/элементов .buttonset??
Любой совет приветствуется!
PS. $('input:radio[name=r'+id+']').get(0) возвращает [object HTMLInputElement], я думаю, так и должно быть. Но у этого объекта нет методов .html() или .val(). $('input:radio[name=r'+id+']:checked').get(0) все еще 'undefined'.
ППС. принудительная видимость для набора кнопок ui-helper-hidden-accessible не меняется «проверено» для исходных радиоэлементов. Я думаю, что вместо этого я могу использовать .ui-state-active для проверки активного радио ... Есть ли лучший способ?