Pregunta Cómo comprobar un botón de opción con jQuery?


Intento verificar un botón de radio con jQuery. Aquí está mi código:

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

Y el JavaScript:

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

No funciona:

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

No funciona:

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

No funciona:

¿Tienes otra idea? ¿Qué me estoy perdiendo?


714
2018-04-14 15:47


origen


Respuestas:


Para versiones de jQuery iguales o superiores (> =) 1.6, use:

$("#radio_1").prop("checked", true);

Para versiones anteriores a (<) 1.6, use:

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

Propina: Es posible que también desee llamar click() o change() en el botón de radio después. Ver comentarios para más información.


1238
2018-04-14 15:49



Prueba esto.

En este ejemplo, lo estoy apuntando con su nombre y valor de entrada

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

Es bueno saberlo: en el caso del valor de varias palabras, también funcionará debido a los apóstrofos.


192
2017-11-16 10:43



Una función adicional prop () que se agrega en jQuery 1.6, que sirve para el mismo propósito.

$("#radio_1").prop("checked", true); 

91
2018-01-03 08:20



Opción corta y fácil de leer:

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

Devuelve verdadero o falso, por lo que puede usarlo en la instrucción "if".


70
2017-10-17 10:20



Prueba esto.

Para verificar el botón de Radio usando Valor utilizar esta.

$('input[name=type][value=2]').attr('checked', true); 

O

$('input[name=type][value=2]').attr('checked', 'checked');

O

$('input[name=type][value=2]').prop('checked', 'checked');

Para verificar el botón de Radio usando CARNÉ DE IDENTIDAD utilizar esta.

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

O

$('#radio_1').prop('checked','checked');

24
2017-12-20 06:12



los $.prop la manera es mejor:

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

y puedes probarlo de la siguiente manera:

$(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();
    });        
});

11
2017-07-19 08:37



Tu tienes que hacer

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

Ese es el atributo HTML


8
2018-04-14 15:50



Prueba esto:

$("input[name=type]").val(['1']);

http://jsfiddle.net/nwo706xw/


7
2018-01-15 10:08



Si la propiedad name no funciona, no olvides que id todavía existe. Esta respuesta es para las personas que quieren apuntar al id aquí cómo lo haces.

$('input[id=element_id][value=element_value]').prop("checked",true);

Porque la propiedad name no funciona para mi Asegúrate de no rodear id y name con citas dobles / simples.

¡Aclamaciones!


5
2017-08-01 14:06



Sí, funcionó para mí de alguna manera:

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

5
2017-10-27 07:28



$("input[name=inputname]:radio").click(function() {
    if($(this).attr("value")=="yes") {
        $(".inputclassname").show();
    }
    if($(this).attr("value")=="no") {
        $(".inputclassname").hide();
    }
});

4
2017-11-25 22:12