onchange on radiobutton no funciona correctamente en IE8

Me veo obligado a trabajar con IE8 (8.0.7601.17514) y tengo esta página simple:

<code><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<form action=".">
    <input type="radio" name="rad" value="1" onchange="alert(1);"/>
    <input type="radio" name="rad" value="0" onchange="alert(0);" checked="checked"/>
</form>
<a href="http://google.com">some dummy link</a>
</body>
</html>
</code>

Lo que espero es que cuando se selecciona el segundo botón de opción, al hacer clic en el primero se activará una alerta de inmediato. Esto funciona bien en FF.

Lo que realmente sucede es que cuando hago clic en la primera radio, no pasa nada. Luego, cuando el elemento está borroso (p. Ej., Hago clic en otro lugar, la otra radio, algún enlace en la página, etc.), ENTONCES, se genera la alerta.

¿Hay alguna solución para esto?

EDITAR:

Al parecer, este comportamiento es exactamente de acuerdo conEspecificación W3C

cambio

El evento de cambio ocurre cuando un control pierde el foco de entrada y su valor se ha modificado desde que ganó el foco. Este evento es válido para INPUT, SELECT y TEXTAREA. elemento.

(Gracias a @ mu-is-too-short).

La solución a esto es agregar un desenfoque + enfoque en un clic:

<code>function radioClick()
{
 this.blur();  
 this.focus();  
}


<input type="radio" name="rad" value="1" onclick="radioClick" onchange="alert(1);"/>
</code>

Respuestas a la pregunta(3)

Su respuesta a la pregunta