Ik heb een simpel scriptje (een Form) waarvoor je een wachtwoord nodig hebt om te verzenden.
Als je op de button klikt checkt hij het wachtwoord netjes of het juist is of niet maar zodra ik op Enter druk doet hij dat niet en word je doorverwezen naar de volgende pagina wat niet de bedoeling is.

Hoe kan ik dit oplossen dat hij ook bij ''Enter'' kijkt of het wachtwoord juist is.
(ps. ik weet dat het een simpele beveiliging is maar het is dan ook maar voor een spelletje)

<!DOCTYPE html>
<head> </head>
<body>


<SCRIPT LANGUAGE="JavaScript">
function pwcheck() {
      var passwd = document.forms['nvt'].pass.value;
      if(passwd=="12345"){
      window.open ('.php','_self',false)
      }
      else{
      alert('Password wrong');
      }
    }
</SCRIPT>


<div>
<form action="http:// .php" id="nvt" method="post">     
<input type="hidden" name="username" value="test">
  <label for="h1"></label>   
        <input type="textarea" id="pass" placeholder="Enter Secret Code" style="font-size:150%;"/>
        <br />
<center>
<input name="h" id=radiohide type="radio" value="2" checked>
               <input type="button" onClick="pwcheck()" class="submit h9" type="submit"  value=" Nu Kopen! "></center>
                        
     </form>
</div>

</body>
</html>
Hm, dus je hebt een form, met een submit button, maar je wilt dat het form niet ge-submit wordt als je op de submit button in het form klikt ... ?

Want dat is wat er gebeurd: door de "enter" wordt het form gesubmit naar de pagina in de "action" (en die ".php" die daar staat zal wel dezelfde ".php" uit de pwcheck() functie zijn). Dat is dat "doorverwezen naar de volgende pagina" (zonder "controle") waar je het over hebt. Enkel als je op de button klikt wordt je pwcheck() uitgevoerd.

Met die window.open() in de pwcheck() heb je helemaal geen form action nodig, en dus ook geen form. Als je die weg haalt ("<form ...>" en "</form>") is je probleem volgens mij ook opgelost.

Overigens definieer je nu 2x "type" in de button ("button" en "submit") - geen idee wat het nou precies is/wordt (kan misschien nog per browser verschillen).

Reageren