Проверьте радио кнопки по классу
$(".test").each(function(i) {
this.checked = true;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="radio" value="1" name="radio" class="test" id="tr1" />
<input type="radio" value="1" name="radio" class="radio" id="tr2" />
<input type="radio" value="1" name="radio" class="radio2" id="tr3" />
<input type="radio" value="1" name="radio" class="test" id="tr4" />
<button class="button">Click</button>
У меня есть два набора переключателей, и я бы хотел, чтобы класс "test" был отмечен по умолчанию.
Как бы я сделал это с переключателями, так как теперь мы можем отметить только один переключатель
2 ответа
Вы должны назвать два набора по-разному, потому что, если они все названы radio
только один из них может быть проверен за один раз. Просто переименуйте второй набор в другое radio2
в моем примере ниже, и тогда наборы будут работать независимо друг от друга.
$(".test").each(function(i) {
this.checked = true;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="radio" value="1" name="radio" class="test" id="tr1" />
<input type="radio" value="1" name="radio" class="radio" id="tr2" />
<input type="radio" value="1" name="radio2" class="radio2" id="tr3" />
<input type="radio" value="1" name="radio2" class="test" id="tr4" />
<button class="button">Click</button>
По определению, радио кнопки представляют собой группу <input>
элементы, разделяющие одно и то же name
с готовым поведением, что, когда один из них выбран, они дают содержащий <form>
пространство имен определяется их общим name
значение выбранного и автоматически отменить выбор любой другой переключатель с тем же name
,
Он был специально разработан для этого варианта использования (где пользователи могут выбрать один из нескольких вариантов).
Если ваш сценарий требует, чтобы пользователи могли выбрать более одного, либо
- использовать разные
name
атрибутов, - использование
<input type="checkbox">
s - использование
<select>
элементы сmultiple="true"
Подводя итог: независимо от того, что вы делаете, ни один достойный браузер не позволит вам выбрать более одного <input type="radio">
с тем же name
В то же самое <form>
элемент. Любым методом. И даже если бы это было теоретически возможно, попытка получить значение этого пространства имен потерпела бы неудачу.
Радиокнопки похожи на горцев: "Может быть только одна".