2009-10-01 16 views

Respuesta

7

Web Bug Track:

El evento onchange se puede unir (en línea o como un controlador de eventos) a cualquier elemento de formulario. Dispara cada vez que cambia el valor del campo de formulario. Desafortunadamente, el comportamiento es un poco extraño en IE, en el caso de una casilla de verificación, o un campo de botón de opción, el evento no se dispara cuando se supone que debe hacerlo (justo cuando hace clic en la opción que desea elegir), sino que solo dispara, cuando hace clic en otro lugar en la página/formulario, o si llama explícitamente a blur(); en el campo.

Y el trabajo en torno sugerido es:

<input type="radio" name="foo" value="Green" onclick="alert(this.value);"/>Green 
<input type="radio" name="foo" value="Blue" onclick="alert(this.value);"/>Blue 
1

problema con solución de Lucas es que esto desencadenará incluso si hace clic en la misma opción de nuevo.

La solución que encontré para trabajar fue agregar onclick = "this.blur();" a la etiqueta del botón de opción que lo fuerza a activar el cambio solo si ha cambiado.

<input type="radio" name="foo" value="Green" onclick="alert(this.value);" onclick="this.onBlur();" />Green 
<input type="radio" name="foo" value="Red" onclick="alert(this.value);" onclick="this.onBlur();" />Red 

Espero que esto ayude.

Cuestiones relacionadas