使用jQ-ui buttonset功能
<script>
$(function() {
$( "#radio" ).buttonset();
});
</script>
<div id="radio">
<input type="radio" id="radio1" name="radio" /><label for="radio1">Choice 1</label>
<input type="radio" id="radio2" name="radio" checked="checked" /><label for="radio2">Choice 2</label>
<input type="radio" id="radio3" name="radio" /><label for="radio3">Choice 3</label>
</div>
有没有办法一次取消选中buttonset的所有单选按钮?
您可以使用以下内容取消选中它们(针对jQuery UI 1.9更新:
$('#radio input').removeAttr('checked');
// Refresh the jQuery UI buttonset.
$( "#radio" ).buttonset('refresh');
工作JSFiddle。
您可以匹配所有单选按钮并使用prop()取消选中它们。
但是,您还必须在执行此操作后刷新buttonset小部件:
$("#radio").find("input:radio").prop("checked", false).end()
.buttonset("refresh");
之前的jQuery 1.6版本
$(':radio').attr('checked', false);
要么
$(':radio').removeAttr('checked');
在jQuery 1.6+之后
$(':radio').prop('checked', false);
要么
$(':radio').removeProp('checked');
偶然发现这个...使用jQuery 1.9.1使用按钮组的类名称,所有按钮最初都未设置。尚不确定是否会对此产生影响,但不方便知道。
$( "div.myclass" ).buttonset();
<div id="myDiv" class="myclass">
<input type="radio" name="myname" id="id1" value="1"><label for="id1">Label1</label>
<input type="radio" name="myname" id="id2" value="2"><label for="id2">Label2</label>
<input type="radio" name="myname" id="id3" value="3"><label for="id3">Label2</label>
</div>
这对我行得通
$('input:radio[name="RadioName"]').each(function () { $(this).attr('checked', false); });