2011-04-26 16 views
5
<input type="radio" value="True" propertyname="AmortizationTermInYears" onchange="showAmortizationTermInYears();UpdateField(this);" name="AmortizationTermInYears" id="AmortizationTermInYears" amortizationterminyearsradio="true"> 

<input type="radio" value="False" propertyname="AmortizationTermInYears" onchange="showAmortizationTermInYears();UpdateField(this);" name="AmortizationTermInYears" id="AmortizationTermInYears" checked="checked"> 

¿Cómo puedo seleccionar uno de estos botones de opción con Jquery cuando se carga la página?seleccionar un botón de opción con jquery

Gracias!

+2

¿qué estás tratando de hacer exactamente? ¿Cuál quieres seleccionar? ¿Por qué tienen la misma identificación? ¡las cosas NUNCA deberían tener la misma identificación! – Patricia

+0

Creo que tienen la misma idea debido al método de extensión HTML Helper, pero quiero verificar el que tiene el valor "verdadero" – slandau

Respuesta

10
$('input[name=AmortizationTermInYears]:nth(0)').prop("checked","checked"); 
+1

Llamar a este código solo funciona una vez. Si llama a esto, el usuario verifica uno diferente, si llama a esto por segunda vez, no funcionará. –

+0

El uso de attr en lugar de prop puede haber estado funcionando al momento de publicar la respuesta anterior. Pero esto ya no es correcto. Busque la respuesta correcta proporcionada por Serj Sagan. – Martin

+0

ha cambiado .attr a .prop – Khodor

1
$('input[name=AmortizationTermInYears]'); 

o

$('input[name=AmortizationTermInYears]:checked'); 
9

Esto va a hacer el truco:

$(document).ready(function() { 
    $("input[name='AmortizationTermInYears'][value='True']").attr("checked", "checked"); 
}); 

Es necesario buscar tanto por el nombre y el valor a continuación, establezca el atributo checked.

Live test case.

+0

que también funciona :) – slandau

+1

@slandau: para el registro, si el botón de opción con el valor 'Verdadero' será el segundo, la respuesta que haya aceptado fallará. –

+0

Eso sí sé, jajaja. Gracias aunque – slandau

2

El atributo "id" no se debe volver a utilizar. Has dado id = "AmortizationTermInYears" a ambos botones de opción. Está mal según los estándares. Configure diferentes identificadores para ambos botones de opción.

También se puede seleccionar el botón de radio especificando Identificación:

$('#AmortizationTermInYears').attr("checked", "checked"); 
3

Aunque la cuestión es sobre todo acerca de cómo seleccionar un elemento, me di cuenta de que todo el mundo está usando la función de attr() y, por lo general, esto está mal porque llamar a esta función solo funciona una vez. Si llama a esto, el usuario verifica uno diferente, si llama a esto por segunda vez, no funcionará. la forma correcta de hacerlo es usar prop()

$('input[name=AmortizationTermInYears]:nth(0)').prop('checked', true); 
+0

+1. Esto resolvió nuestro problema. – Pradeep

Cuestiones relacionadas