onchange no radiobutton não está funcionando corretamente no IE8

Sou forçado a trabalhar com o IE8 (8.0.7601.17514) e tenho esta página simples:

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

O que eu espero é que, quando o segundo botão de rádio for selecionado, clicar no primeiro botão irá imediatamente ativar um alerta. Isso funciona bem no FF.

O que realmente acontece é que quando eu clico no primeiro rádio, nada acontece. Então, quando o elemento estiver desfocado (por exemplo, eu clico em outro lugar, o outro rádio, algum link na página, etc.), ENTÃO o alerta é gerado.

Existe uma solução para isso?

EDITAR:

aparentemente este comportamento é exatamente de acordo comEspecificação W3C

mudança

O evento de alteração ocorre quando um controle perde o foco de entrada e seu valor é modificado desde o foco. Este evento é válido para INPUT, SELECT e TEXTAREA. elemento.

(graças a @ mu-is-too-short).

A solução para isso é adicionar um foco onclick blur +:

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


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

questionAnswers(3)

yourAnswerToTheQuestion