Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 15:18 Der er 10 kommentarer og
1 løsning

Kan ikke kalde Javascript med onSubmit()

Jeg har en loginside i ASP, der bruger MD5-kryptering, men jeg kan ikke kalde min encrypt()-funktion.
----kode start-----
<script language="JavaScript" type="text/javascript" src="include/md5.js"></script>
<script language="javascript">
function encrypt() {
    // identify if a session cookie was given, otherwise logout
    // cookieStr = document.cookie;
    // session cookie exists, so we can go ahead and encrypt
    session_id = "<% = Session.SessionID %>";
    str = document.fform.pass.value + "*" + session_id;
    document.fform.pass.value = "";
    document.fform.response.value = MD5(str);
    document.fform.submit();
}
</script>
<script language="javascript">
function submitit() {
    if (window.event.keyCode==13) {
    encrypt();
    return false;
        }
}
</script>
      <h1>Password protected website</h1>
      <h4>This site is for authorized visitors
        only. In order to log in, session cookies must be enabled on your PC.</h4>
      <form name="fform" method="post" action="check_pw.asp" onSubmit="encrypt();">
        <p> Login:<br>
          <input type="text" name="txtUserName">
        <p>Password:<br>
          <input type="password" name="pass" id="pass">
          <input type="submit" value="Submit">
      </form>
-------kodeslut---------
Er det forkert brug af onSubmit eller hva?
Avatar billede sbm Nybegynder
10. november 2003 - 15:35 #1
Måske du istedet skulle lave en "almindelig" knap til at submitte fra. Fra den kalder du så en javascript funktion der først kalder encrypt() og derefter submitter formen...?
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 15:36 #2
Lyder som en ide? Kan du hjælpe med det?
Avatar billede sbm Nybegynder
10. november 2003 - 15:52 #3
Jeg forestillede mig noget i stil med:

<html>
<head>
<script language="JavaScript" type="text/javascript">
<!--
function encrypt() {
    // krypteringskode her...
    alert('1');
}
function submitit() {
    // formen submittes...
    alert('2');
    fform.submit();
}
function submitform() {
    encrypt();
    submitit();
}
//-->
</script>
</head>
<body>
<form name="fform" id="fform" action="destination.asp" method="post">
<input type="button" name="submit" value="submit" onClick="submitform();" />
</form>
</body>
</html>
Avatar billede sbm Nybegynder
10. november 2003 - 16:02 #4
Jeg har kigget lidt på det. Det burde virke med onSubmit();
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 16:04 #5
Det giver desværre en "Error on page" og jeg kommer ikke væk fra login-siden.. Nogen forklaring på det?
Avatar billede roenving Novice
10. november 2003 - 16:17 #6
Hvad siger resten af fejlmeddelelsen ?-)
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 16:20 #7
Den står i statusbar'en, så der er ikke andet end udråbstegnet og teksten "Error on page"
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 16:24 #8
Error: 'document.fform.response' is null or not an object

Længe leve dobbelt-klikket ;o)
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 16:40 #9
Jeg får også fejlen: Object doesn't support this property or method" i linien document.fform.submit();
Avatar billede ugotabe_kidding Nybegynder
10. november 2003 - 17:19 #10
Problem er løst - lukker
Avatar billede roenving Novice
10. november 2003 - 18:54 #11
-- og tak for hjælpen !-|
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Solution Manager til Cyberdivisionen

Rambøll Management Consulting

Senior Software Engineer