Wieso schreibt das Script nichts ins Hidden-Feld?

exciter

Mitglied
Hallo an alle! Ich habe ein Script, das nicht tut was ich will ;)

<html>
<head>
<script language="javascript" src="md5.js"></script>
<script language="javascript">
<!--
function doChallengeResponse() {
str = document.login.username.value+"*"+document.login.password.value;
document.login.response.value = MD5(str);
document.login.password.value = "";
}
// -->
</script>
</head>
<body>
<form name="login">
Benutzer:
<input type="text" name="username" size=32 maxlength=32><br>
Passwort:
<input type="password" name="password" size=32 maxlength=32><br>
<input onClick="doChallengeResponse(); return false;" type="submit" name="submitbtn" value="Login now">
MD5-Antwort: <input type="hidden" name="response" value="">
</form>
</body>
</html>

Kann mir jemand erklären, warum nach klicken des Buttons das Hidden-Feld "response" immer noch keinen Wert hat?

ich hab jetzt mal 2 Testseiten hochgeladen, eine mit Text-, die andere mit Hiddenfeld:

Text (funktioniert):
http://web110.essen082.server4free.de/md5-1.html

Hidden: ( nicht :( )
http://web110.essen082.server4free.de/md5-2.html

Auf Submitbutton drücken und dann den Value von "response" anschauen: leer!

Ich meine wenn es mit einem Standardtextfeld geht, muss es auch mit einem Hidden-Feld gehen...

Hab auch schon
http://selfhtml.teamone.de/javascript/objekte/forms.htm
gewälzt, aber nix geht!

HILFE BITTE
 
Ja wo erwartest du den Wert des Hidden Inputs?
Im Quelltext jedenfalls nicht!

Mach doch einfach mal ein alert(window.document.login.response); rein, und du wirst sehen, dass das Input serwohl einen Wert hat!
 
Nimm mal statt type="submit" type="button".
Dann wird nicht das Absenden den Formulars ausgelöst. Liegt warscheinlich daran.
Hat Javascript einen MD5-Befehl?!
 
OK. Das ist also eine selbst geschriebene Funktion.
Überprüf mal, ob die Funktion was zurückgiebt (return ...)
Das könnte auch ein Fehler sein.
 
Wie Nuinmundo schon sagte,
den neuen Wert des "hidden"-<input> siehst du natürlich nicht im Quellcode,aber wenn du das Formular abschickst,
wirst du sehen,dass er gesetzt ist :)
 
Ok danke an alle die gepostet haben, habs jetzt so geschafft:

<html>
<head>
<title>Login</title>
<script language="javascript" src="md5.js"></script>
</head>
<body>
<form name="login" action="http://localhost/1.php" method="post" onsubmit="doChallengeResponse();">
<script language="javascript">
<!--
function doChallengeResponse() {
str = document.login.username.value+"*"+document.login.password.value;
document.login.response.value = MD5(str);
document.login.password.value = "";
}
// -->
</script>
Benutzer:
<input type="text" name="username" size="32" maxlength="32"><br>
Passwort:
<input type="password" name="password" size="32" maxlength="32 "><br>
<input type="submit" name="submitbtn" value="Login">
<input type="hidden" name="response" value="">
</form>
</body>
</html>
 

Neue Beiträge

Zurück