22

jQ-uiのボタンセット機能の使用

<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>

ボタンセットのすべてのラジオボタンを一度にオフにする方法はありますか?

4

7 に答える 7

33

次のコマンドでそれらのチェックを外すことができます (jQuery UI 1.9 用に更新:

$('#radio input').removeAttr('checked');
// Refresh the jQuery UI buttonset.                  
$( "#radio" ).buttonset('refresh');
​

ワーキングJSFiddle

于 2012-07-25T09:46:07.580 に答える
15

すべてのラジオ ボタンを一致させ、prop()を使用してそれらのチェックを外すことができます。

ただし、実行後にボタンセット ウィジェットも更新する必要があります。

$("#radio").find("input:radio").prop("checked", false).end()
           .buttonset("refresh");
于 2012-07-25T09:48:59.183 に答える
14

jQuery1.6バージョンより前

$(':radio').attr('checked', false);  

また

$(':radio').removeAttr('checked');

jQuery1.6以降以降

$(':radio').prop('checked', false);

また

$(':radio').removeProp('checked');
于 2012-07-25T12:04:01.540 に答える
1

偶然これを発見しました...ボタンセットのクラス名を使用する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>
于 2013-11-02T13:53:08.130 に答える
1

それは私のために働く

$('input:radio[name="RadioName"]').each(function () { $(this).attr('checked', false); });
于 2018-03-29T08:08:07.410 に答える
0

JQuery 1.12 以降の場合

ラジオ ボタンを で囲み<div>、ID を付けます (例: "radio")。

$("#radio").find("input:radio").prop("checked", false)

于 2019-12-09T10:22:28.803 に答える
0

これを実現するための Javascurpt ネイティブの方法

function reset(){
//var list = document.querySelectorAll('input[type=radio]');
var list =document.querySelectorAll('input[type="radio"]:checked')
debugger
list.forEach(element => { 
if(element.checked){element.checked=false}}
    
);
}
<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" checked value="3"><label for="id3">Label3</label>
</div>

<button onclick="reset()">reset me</button>

于 2019-12-09T12:58:47.030 に答える