Firefox ignoriert das Überschreiben von Formularen durch JavaScript

  • Ich habe diesen Code

     <html>
    <head>
    <script type="text/javascript" src="my-search.js"></script>
    </head>
    <body onLoad="my_Init();">
    <div>
    <form name="id_msearchform" onsubmit="my_EventHandler_Action(); return false;">
      <input type="text" name="id_searchphrase" value="example"></input>
      <br><br>
      <input type="submit" name="id_searchsubmit" value="Search"></input>
    </form>
    <br><br>
    <div id="id_searchresults">No search done...</div>
    </div>
    </body>
    </html>
     

    Ich möchte nicht, dass der Browser dies tut eine neue URL anfordern Deshalb hat "onsubmit" "false zurückgeben". Dieser Code funktioniert in Internet Explorer, Firefox generiert jedoch eine neue Anforderung. Irgendwelche Ideen, was ich falsch mache?

    FireBug wechselt zwischen der Nichtbestätigung der Javascript-Referenz und dem Anzeigen der Javascript-Datei ohne Fehler mehr hinzufügen Ich werde verschiedene Dinge ausprobieren, z. Laden Sie es in das Netz hoch und prüfen Sie, ob FireFox sich anders verhält, wenn Sie JS nicht auf der lokalen Festplatte ausführen.

    22 November 2011
    Tom
2 answers
  • Sind Sie sicher, dass Sie keine Fehler festgestellt haben?

    Ich versuche es mit einem einfachen HTML-Code:

     <html>
    <head>
    <script type="text/javascript" src="my-search.js"></script>
    </head>
    <body onLoad="my_Init();">
    <div>
    <form name="id_msearchform" onsubmit="my_EventHandler_Action(); return false;">
      <input type="text" name="id_searchphrase" value="example"></input>
      <br><br>
      <input type="submit" name="id_searchsubmit" value="Search"></input>
    </form>
    <br><br>
    <div id="id_searchresults">No search done...</div>
    </div>
    </body>
    </html>
     

    Und ein einfaches Javascript namens my-search.js im selben Pfad meines HTML-Codes mit dem nächsten Code:

     var my_Init = function(){
        alert('Hello Onload');
    }
    var my_EventHandler_Action = function(){
        alert('Hello OnSubmit');
    }
     

    Und es funktioniert gut.

    Können Sie eine Live-Demo (mit Dropbox oder etwas) zeigen?

    22 November 2011
    GalledTom
  • Verwenden Sie statt einer Übergabeschaltfläche eine Schaltfläche, und verknüpfen Sie die JavaScript-Funktion mit dieser.

    22 November 2011
    CommunistPancake