Я нахожусь в процессе изучения JQuery спасибо главным образом к положительной ссылке здесь на Переполнении стека. Мне нужна функция, которая проверяет все флажки в элемент, которые имеют тот же класс CSS. Это должно возвращать true, если по крайней мере один из них проверяется. Существуют также другие поля в элементе, которые не важны проверке.
Класс CSS является ненужным и только на месте для создания способа определить флажки в группе. Похоже на плохую практику, таким образом, любые рекомендации о других способах определить их приветствуются.
Список переключателей недоступен из-за разметки страницы. Я решил это с помощью специального валидатора.
Добавьте эту функцию JavaScript на страницу
function ValidateDDA(s, a) {
a.IsValid = ($(".chk:checked", $('parentDiv')).length > 0);
}
Затем добавьте CustomValidator на страницу
<asp:CustomValidator runat="server" ID="cvDDLCorrect" ClientValidationFunction="ValidateDDA"
ErrorMessage="No hay resuesta correcta" CssClass="error" />
Работает как шарм. Спасибо за предложения.
Чтобы проверить, отмечен ли хотя бы один:
$(".classname:checked", container).length > 0
«контейнер» - это (необязательный) элемент контейнера.
Если вы не хотите использовать имена классов для группировки, вы должны просто дать каждому флажку одно и то же имя:
<input type="checkbox" name="group1" value="1" />
<input type="checkbox" name="group1" value="2" />
<input type="checkbox" name="group1" value="3" />
Затем вы можете изменить тестовый код на:
$("[name=group1]:checked").length > 0