Kako lahko uporabniku dovolim, da izbere samo eno potrditveno polje?
Vem, da so radijski gumbi "idealni", vendar za moj namen...to ni.
Imam polje, v katerem morajo uporabniki izbrati eno ali dve možnosti, ne pa obeh. Težava je v tem, da moram uporabnikom omogočiti, da lahko svojo možnost tudi odkljukajo, in tu radijski gumbi ne uspejo, saj je treba, ko izberete skupino, izbrati možnost.
Informacije bom potrdil prek php, vendar bi uporabnike vseeno rad omejil na en odgovor, če ga želijo podati.
Ta delček bo:
// the selector will match all input controls of type :checkbox
// and attach a click event handler
$("input:checkbox").on('click', function() {
// in the handler, 'this' refers to the box clicked on
var $box = $(this);
if ($box.is(":checked")) {
// the name of the box is retrieved using the .attr() method
// as it is assumed and expected to be immutable
var group = "input:checkbox[name='" + $box.attr("name") + "']";
// the checked state of the group/box on the other hand will change
// and the current value is retrieved using .prop() method
$(group).prop("checked", false);
$box.prop("checked", true);
} else {
$box.prop("checked", false);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
<h3>Fruits</h3>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[1][]" />Kiwi</label>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[1][]" />Jackfruit</label>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[1][]" />Mango</label>
</div>
<div>
<h3>Animals</h3>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[2][]" />Tiger</label>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[2][]" />Sloth</label>
<label>
<input type="checkbox" class="radio" value="1" name="fooby[2][]" />Cheetah</label>
</div>
$("#myform input:checkbox").change(function() {
$("#myform input:checkbox").attr("checked", false);
$(this).attr("checked", true);
});
To bi moralo delovati za poljubno število potrditvenih polj v obrazcu. Če imate druge, ki niso del skupine, nastavite izbirnike za ustrezne vnose.