[javascript] 如何用jQuery檢查單選按鈕?



11 Answers

嘗試這個。

在這個例子中,我用它的輸入名稱和值來定位它

$("input[name=background][value='some value']").prop("checked",true);

有用的知識:在多詞價值的情況下,它也會因為撇號而起作用。

Question

我嘗試用​​jQuery檢查一個單選按鈕。 這是我的代碼:

<form>
    <div id='type'>
        <input type='radio' id='radio_1' name='type' value='1' />
        <input type='radio' id='radio_2' name='type' value='2' />
        <input type='radio' id='radio_3' name='type' value='3' /> 
    </div>
</form>

和JavaScript:

jQuery("#radio_1").attr('checked', true);

不起作用:

jQuery("input[value='1']").attr('checked', true);

不起作用:

jQuery('input:radio[name="type"]').filter('[value="1"]').attr('checked', true);

不起作用:

你有另一個想法嗎? 我錯過了什麼?







$("#radio_1").attr('checked', true);
//or
$("#radio_1").attr('checked', 'checked');



$.prop方式更好:

$(document).ready(function () {                            
    $("#radio_1").prop('checked', true);        
});

你可以像下面這樣測試它:

$(document).ready(function () {                            
    $("#radio_1, #radio_2", "#radio_3").change(function () {
        if ($("#radio_1").is(":checked")) {
            $('#div1').show();
        }
        else if ($("#radio_2").is(":checked")) {
            $('#div2').show();
        }
        else 
            $('#div3').show();
    });        
});



為了防止任何人在使用jQuery UI時嘗試實現此目的,您還需要刷新UI複選框對像以反映更新後的值:

$("#option2").prop("checked", true); // Check id option2
$("input[name='radio_options']").button("refresh"); // Refresh button set



我剛剛有類似的問題,一個簡單的解決方案是只使用:

.click()

如果在調用函數後刷新無線電,任何其他解決方案都可以使用




我們應該想告訴它是一個radio按鈕。所以請使用以下代碼嘗試。

$("input[type='radio'][name='userRadionButtonName']").prop('checked', true);



是的,它對我來說就像一種方式:

$("#radio_1").attr('checked', 'checked');



嘗試這個

var isChecked = $("#radio_1")[0].checked;



簡單易讀的選項:

$("#radio_1").is(":checked")

它返回true或false,所以你可以在“if”語句中使用它。




我使用這個代碼:

我很抱歉英文。

var $j = jQuery.noConflict();

$j(function() {
    // add handler
    $j('#radio-1, #radio-2').click(function(){

        // find all checked and cancel checked
        $j('input:radio:checked').prop('checked', false);

        // this radio add cheked
        $j(this).prop('checked', true);
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset class="section">
  <legend>Radio buttons</legend>
  <label>
    <input type="radio" id="radio-1" checked>
    Option one is this and that&mdash;be sure to include why it's great
  </label>
  <br>
  <label>
    <input type="radio" id="radio-2">
    Option two can be something else
  </label>
</fieldset>




嘗試這個

 $("input:checked", "#radioButton").val()

如果選中,則返回True否則返回False

jQuery v1.10.1



Related