我有一个测验,它使用数据库中答案的ID作为名称,以检查它们是否正确。所以基本上我不能使它们全名相同。
无论如何,这给我留下了可以全部检查的单选按钮,但它不应该如何工作。我发现jQuery允许取消选中单选按钮,但是当你点击其他按钮时我需要取消选中它们。
HTML:
<fieldset>
<input type="radio" name="21">
<label for="21">Answer 21</label>
<input type="radio" name="22" class="checked">
<label for="22">Answer 22</label>
<input type="radio" name="23" class="">
<label for="23">Answer 23</label>
<input type="radio" name="24">
<label for="24">Answer 24</label>
</fieldset>
脚本:
$("input[type='radio']").click(function (event) {
// If the button is selected.
if ($(this).hasClass("checked")) {
// Remove the placeholder.
$(this).removeClass("checked");
// And remove the selection.
$(this).removeAttr("checked");
// If the button is not selected.
} else {
// Remove the placeholder from the other buttons.
$("input[type='radio']").each(function () {
$(this).removeClass("checked");
});
// And add the placeholder to the button.
$(this).addClass("checked");
}
});
因此,如果选中21并且我点击22,则应取消选中
答案 0 :(得分:0)
尝试此代码,除了点击的单选按钮外,所有单选按钮都将取消选中。就像Aron P Johny所说的那样,如果你想把所有的单选按钮分组给特定的问题和答案,那就去找他的答案吧。
$("input[type='radio']").click(function (event) {
$("input[type='radio']").prop('checked',false);
$(this).prop('checked',true);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset>
<input type="radio" name="21">
<label for="21">Answer 21</label>
<input type="radio" name="22" class="checked">
<label for="22">Answer 22</label>
<input type="radio" name="23" class="">
<label for="23">Answer 23</label>
<input type="radio" name="24">
<label for="24">Answer 24</label>
</fieldset>
&#13;
答案 1 :(得分:0)
如果您希望同一字段集中的无线电组充当无线电组,那么您只需执行
$("input[type='radio']").click(function (event) {
$(this).addClass("checked");
$(this).siblings('input[type="radio"]').prop('checked', false).removeClass('checked')
});
演示:Fiddle
答案 2 :(得分:0)
Fill
如果这是你想要的,你真的不需要jQuery ..
max(array_slice($arr,2,3))
max(array_slice($arr,4,4))
max(array_slice($arr,8,3))
确保它们都具有相同的名称..