JQuery: Obtener valor de radio y realizar diferentes operaciones
Pregunta
Tengo 2 entradas de radio. ¿Cómo puedo procesar funciones de jQuery en un valor seleccionado en un evento onchange?
<input value="radio_2way" name="IBE1$IBE_NurFlug1$flightIBE" id="IBE1_IBE_NurFlug1_radio_2way" checked="checked" type="radio">Hin- und Rückflug <input value="radio_1way" name="IBE1$IBE_NurFlug1$flightIBE" id="IBE1_IBE_NurFlug1_radio_1way" type="radio">Einfach
Si el valor es comprobado radio_1way do function1 y si es radio_2way hacer function2.
THX mucho, saludos
Solución
Sólo hay que conectar un evento de cambio de la radio a
$(document).ready(function(){
$('input[id^="IBE1_IBE_NurFlug1"]').change(function(e){
var $changed = $(e.target);
alert($changed.val());
});
});
comprobar el jsFiddle: http://jsfiddle.net/BUgRV/
Otros consejos
Yo usaría el evento de cambio basado en el nombre, y luego encontrar el valor del botón que se comprueba y la llave fuera de él. Tenga en cuenta que el botón se cambia será el único que quedará marcado para que pueda obtener el valor de this
. Estaba preocupado al principio que podrían ser sus dos eventos de cambios desencadenados (uno para el botón de control, y otro para el botón de estar sin marcar). Los dos navegadores que he probado, sin embargo, parecían manejarlo de una manera sana y sólo generan el evento de cambio en el botón que se comprueba. Probado en Firefox y Safari.
$(function() {
$('[name=IBE1$IBE_NurFlug1$flightIBE]').change( function() {
if ($(this).val() == 'radio_2way") {
...
}
else {
...
}
}
});
Trate
$("input").click(function(){
if($(this).attr('value') == 'radio_2way'){
alert('2 way');
}
});
Cambiar el código anterior para sus necesidades. Usted tendrá que colocar el código anterior en la sección $(document).ready()
.
EDIT:
Como se ha señalado, es probable que necesite para su uso en lugar de $("input").change
click
.