Phil: URL-Wechsel nach Druecken der Eingabetaste

Hi!
Ich habe folgendes Problem:
Der Benutzer soll in einem HTML-Formular etwas eingeben koennen und wenn dann der Button "OK" geklickt ODER die Eingabetaste gedrückt wird, dann soll zu einer anderen Seite weitergeleitet werden.

Die Loesung, die ich bist jetzt habe funktioniert in soweit, dass die Funktion beim klicken des Buttons korrekt ausgeführt wird.

Das Drücken der Eingabetaste wird korrekt erkannt, aber danach führt der Browser den URL-Wechsel nicht durch (dafür dann aber den sonst üblichen Submit...)

Warum funktioniert window.location.href nicht mehr, nachdem ich auf document.layers zugegriffen habe?

Quelltext siehe unten:

<html>
<head>
<script language="JavaScript">
<!--

function getDocFile()
{
var fileName = document.testForm.var1.value + '.html';
window.location.href = fileName;
}

//-->
</script>
</head>
<body onLoad="document.testForm.var1.focus();">

<form name="testForm">
<input type="text" name="var1">
<input type="button" value="ok" onClick="getDocFile();">
</form>

<script language="JavaScript">
<!--
function whatKey(myKey)
{
if (document.layers)
{
if (myKey.which == '13')
{
getDocFile();
}
}
else if (window.event.keyCode == '13')
{
getDocFile();
}
}
document.testForm.var1.onkeypress = whatKey;
-->
</script>

</body>
</html>

  1. Hi,

    Das Drücken der Eingabetaste wird korrekt erkannt, aber danach führt der Browser den URL-Wechsel nicht durch (dafür dann aber den sonst üblichen Submit...)

    Probier's mit:

    <form name="testForm" onsubmit="getDocFile();">

    Ciao

    1. Probier's mit:

      <form name="testForm" onsubmit="getDocFile();">

      Ciao

      Danke fuer die schnelle Antwort!
      Leider hatte ich das schon - ohne Erfolg - probiert...

      Ich dachte jemand weiss vielleicht etwas ueber bekannte Unvertraeglichkeiten der JavaScript-Methoden, die ich verwende.

      Vielleicht macht es ja auch keinen Sinn, wie ich an die Sache herangehe.

      Gibt es einen anderen Weg mit Javascript einen Sprung zu einer anderen Website einzuleiten, ausser window.location.href?

      mfg
      Phil

      1. Hi nochma,

        hab da was vergessen ;-)

        Da das eigentliche 'submit' nicht ausgeführt werden soll:

        <form name="testForm" onsubmit="return getDocFile();">

        Die Funktion musst du dann noch um das 'restun(false);' erweitern.

        function getDocFile()
        {
        var fileName = document.testForm.var1.value;
        window.location.href = fileName;
        return (false);
        }

        //-->

        Ciao
        Christian

        1. Ciao
          Christian

          DANKE! DANKE! DANKE!
          das wars!
          argl! und ich hab hier rumprobiert wie'n irrer... ;-)
          jetzt hau ich ab in die sonne!
          wuensche einen schoenen feierabend!
          bye
          Phil