Form ist trotzdem eingereicht, obwohl listener-Funktion gibt false zurück

Ich versuche herauszufinden, warum dieses JavaScript nicht zu stoppen das Formular wird gesendet:

<form action="http://www.example.com" id="form">
    <input type="text" />
    <input type="submit" />
</form>

<script>
var code = function () {
    return false;
};
var element = window.document.getElementById("form");
if (element.addEventListener) {
    element.addEventListener("submit", code, false);
}
</script>

Es sei denn, ich fügen Sie die folgende "onsubmit" Attribut der form element:

<form action="http://www.example.com" id="form" onsubmit="return false">
    <input type="text" />
    <input type="submit" />
</form>

<script>
var code = function () {
    return false;
};
var element = window.document.getElementById("form");
if (element.addEventListener) {
    element.addEventListener("submit", code, false);
}
</script>

Scheint, wie die addEventListener-Methode alleine sollte den trick tun. Irgendwelche Gedanken? Ich bin auf einem Mac, und ich bin mit dem gleichen Ergebnis auf Safari, Firefox und Opera. Danke.

InformationsquelleAutor | 2009-06-08
Schreibe einen Kommentar