JavaScript: проблема getElementById в IE
Я пытаюсь прикрепить событие click к флажку, используя JavaScript. Ниже показан HTML и JS.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<input type="hidden" name="caution_c" value="0">
<input type="checkbox" id="caution_c" name="caution_c" value="1" tabindex="120">
<script type="text/javascript">
var cb = document.getElementById('caution_c');
cb.onclick = function() {
alert(1);
}
</script>
</body>
</html>
Проблема в том, что в IE событие click не срабатывает. Я сузил проблемное место. Проблема в том, что перед флажком есть скрытый ввод, и оба эти элемента имеют одинаковые имена. Я не уверен, почему это вызывает проблему (в конце концов, я использую getElementById, а у скрытого элемента даже нет идентификатора).
Есть ли веская причина для такого типа поведения (только IE. Работает нормально в Firefox ... как всегда :()? Кроме того, есть ли хороший обходной путь (я мог бы просто сделатьdocument.getElementsByName ( 'caution_c') [1] но я не хочу ...)