Konflikt zwischen Javascript-Funktion und Formname

Ich habe eine Javascript-Funktion, die nicht ausgeführt wird und einen Fehler verursacht. Es dauerte ungefähr eine Stunde, bis mir klar wurde, dass mein Formular denselben Namen wie die Funktion hatte. Es schien seltsam, dass ein Formularname in Konflikt mit einem Funktionsnamen steht, aber ich ändere den Namen trotzdem und alles hat gut funktioniert. Weiß jemand, warum das überhaupt passieren würde?

Wenn Sie diesen Code ausführen, schlägt dies fehl, aber wenn Sie den Namen des Formulars ändern, funktioniert dies sehr seltsam.

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/javascript">
function mytest(){alert("hello");}
</script>
</head>
<body>
<form name="mytest" ></form>
<a  href="#" onClick="mytest();">Click Me</a>
</body>
</html>

Ich lasse dieses auf IE6 laufen. Merkwürdig für mich ist, dass es sich bei dem einen um JavaScript-Code und bei dem anderen um ein HTML-Attribut handelt.

Live-Link, wo Sie dies sehen können:
JSBin

Antworten auf die Frage(2)

Ihre Antwort auf die Frage