javascript: getElementById-problem im IE

Ich versuche Anhängen klicken Sie auf Ereignis, um eine check-box mit JavaScript. Unten sehen Sie die HTML-und 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>

Das problem ist, dass in IE, das click-Ereignis nicht ausgelöst wird. Ich verengt das problem Lage. Das Problem ist, dass es einen versteckten Eingang, kurz bevor Sie das Kontrollkästchen, und diese beiden Elemente haben den gleichen Namen. Ich bin mir nicht sicher, warum dies ist ein problem verursacht(schließlich bin ich mit getElementById und das hidden-element nicht auch eine id haben).

Gibt es einen gültigen Grund für diese Art von Verhalten (nur IE. Funktioniert einwandfrei in Firefox...wie immer 🙁 )? Auch gibt es eine gute Abhilfe (könnte ich mir Dokument.getElementsByName('caution_c')[1] aber ich will nicht...)

Schreibe einen Kommentar