значение radio
Доброго вам!
Не выходит, вроде бы, простая вещь. Нужно проверить radio на check неcheck. Групп radio на странице несколько, ни количество групп ни количество самих input не известно(генерируется). Задача проверить перед отправкой формы на нечекнутые radio и поругать за это пользователя :) Пытаюсь родить что-нибудь вроде такого: $("div .answers").each(function(){ if($(this).children().prop("checked")) {alert('checkd');} }); т.е. берется первый блок ответов-radio(заключенный в div), получаем его потомков, проверяем: если они чекнуты то выводим сообщение. Потом след. блок и т.д. Но это не работает как не старался. Чуть не забыл html: <div class="answers"> <INPUT type="radio" id="20-21" name="20" /> <INPUT type="radio" id="21-21" name="21" /> </div> ну и так далее... Поможите люди добрые :thanks: |
Цитата:
|
действительно. Хотя, пробовал перебирать, но видимо в поздний час где-то допустил синтаксическую ошибку и не работало. Хотя, так и не понятно, в примерах children().css() - стили применяются ко всем дочерним элементам, без перебора, а свойство не получается....
Спасибо за наводку, получилось то, что хотел.:victory: :thanks: |
Цитата:
|
Цитата:
|
Цитата:
А отфильтровать нельзя. Задача была найти на какой вопрос не получен ответ и вывести этот номер. |
Цитата:
сам себе отвечаю может вопросы с type="radio" |
Цитата:
|
Цитата:
-radio1 -radio2 -radio3 отметили радио2, фильтр вернет радио 1 и радио3. Но о том что радио2 = чек я не знаю, ибо я не знаю что их три. Можно ли как то использовать "подфильтр"? $("div .answers").each(function( // можно ли здесь применить селектор чтобы он подействовал к текущей выборке, т.е. к объекту на который ссылаемся $(this)? )) |
Prowler,
у всех радио должно быть одно имя если с этим именем все не чекет значит ничего невыбрано |
хм... не дотумкую какой селектор может быть.
divам я могу дать значения, совпадающие с именами radio: <div id=6> <input type="radio" name='6' /> <input type="radio" name='6' /> <input type="radio" name='6' /> </div> <div id=7> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> </div> соответственно можно получить a=$("div").attr('id') можно как то выбрать по div[id=a] AND input:radio:checked? |
Prowler,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> $(function () { $('#test').click(function () { $("div.answers").each(function () { if (!$('input:checked', this).length) { alert('Вопрос ' + this.id + ' неотвечен'); } }); }) }) </script> </head> <body> <div id=6 class="answers"> <input type="radio" name='6' /> <input type="radio" name='6' /> <input type="radio" name='6' /> </div> <div id=7 class="answers"> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> <input type="radio" name='7' /> </div> <input name="" type="button" value="проверка" id="test"> </body> </html> |
рони,
Спасибо большое. Но можно, если не сложно, объяснить этот селектор ('input:checked', this) или ссылочку дать, где можно почерпнуть знания об этом. |
Prowler,
'input:checked' обычный селектор jquery а через запятую где искать контекст -- в данном случае this очередной div - http://api.jquery.com/jQuery/#jQuery-selector-context |
рони,
эх, как мало я знаю... Спасибо огромнейшее за уделенное мне время, за разъяснения. Это прям именно то, что нужно, ну и то, что хотел узнать в 9 посте. |
Часовой пояс GMT +3, время: 03:35. |