пятница, 10 декабря 2010 г.

Используйте в IE событие onclick вместо onchange

IE logo

Обнаружился новый интересный баг в ИЕ, причем насколько я понял он присутствует практически во всех версиях: в IE5, IE5.5, IE6, IE7, IE8. В Internet Explorer как-то своеобразно работает событие onchange в полях checkbox и radio в формах. При нажатии не происходит события onChange, оно происходит только, например, при нажатии в области формы.

<input type="radio" name="btn" value="1" onchange="alert(this.value);"/>1
<input type="radio" name="btn" value="2" onchange="alert(this.value);"/>2

Пример:

1
2

Решение - для совместимости с IE использовать в формах для полей checkbox и radio не событие onchange, а onclick
<input type="radio" name="btn" value="1" onclick="alert(this.value);"/>1