Autor Beitrag
Arbengie
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 66



BeitragVerfasst: Mo 01.08.11 16:23 
Moin, :)
ich habe mich heute das erste Mal mit Javascript auseinander gesetzt und will ein simples Login Script machen.
Wenn man das Password eingibt, sollen die Buchstaben durch "*" ersetzt werden und das Password in einer Variable gespeichert werden.
Wenn man dann auf den Login Button clickt, soll vorerst nur das Password ausgegeben werden (zum Testen), doch es wird einfach nur ein leerer String (leeres Fenster) ausgegeben.
Außerdem wird das Password Textfeld nicht durch die "*" ersetzt.

Kann mir wer helfen, um das Script funktionstüchtig zu machen?

MfG

ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
<html>                                                                                                                
    <title>                                                                                                           
        Login                                                                                                         
    </title>                                                                                                          
    <body>                                                                                                            
        <form name="frmMain" action="" method="get">                                                                  
            <pre>Name:      <input type="text" name="name" size="10"/></pre>                                    
            <pre>Passwort:  <input type="text" name="pw" size="10" onkeyup="verschluesseln(this.value);"/></pre>
            <input type="submit" name="login" value="Login" onclick="login();"/>                                      
        </form>                                                                                                       
    </body>                                                                                                           
</html>                                                                                                               
                                                                                                                      
<script type="text/javascript">                                                                                       
    var password = "";                                                                                                
                                                                                                                      
    function verschluesseln(text)                                                                                     
    {                                                                                                                 
        var lastLetter = slice(text.length - 1, 1);                                                                   
        password = password + lastLetter;                                                                             
        document.frmMain.pw.value := "";                                                                              
        for (var i = 0; i < text.length; i++)                                                                         
        {                                                                                                             
            document.frmMain.pw.value = document.frmMain.pw.value + "*";                                              
        }                                                                                                             
    }                                                                                                                 
                                                                                                                      
    function login()                                                                                                  
    {                                                                                                                 
        alert(password);                                                                                              
    }                                                                                                                 
</script>
Dude566
ontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic starofftopic star
Beiträge: 1592
Erhaltene Danke: 79

W8, W7 (Chrome, FF, IE)
Delphi XE2 Pro, Eclipse Juno, VS2012
BeitragVerfasst: Mo 01.08.11 16:35 
Um das Eingabefeld des Passworts mit Sternchen zu versehen, muss es auch vom Typ "password" und nicht "text" sein. ;)

_________________
Es gibt 10 Gruppen von Menschen: diejenigen, die das Binärsystem verstehen, und die anderen.
Arbengie Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 66



BeitragVerfasst: Mo 01.08.11 17:23 
ja ok :) Aber es muss doch sicherlich auch ne "manuelle" Möglichkeit geben, so wie ich das vor hatte.^^
Yogu
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2598
Erhaltene Danke: 156

Ubuntu 13.04, Win 7
C# (VS 2013)
BeitragVerfasst: Mo 01.08.11 17:53 
user profile iconArbengie hat folgendes geschrieben Zum zitierten Posting springen:
ja ok :) Aber es muss doch sicherlich auch ne "manuelle" Möglichkeit geben, so wie ich das vor hatte.^^

Sicher, aber deine wird, wenn sie funktioniert, ein paar Makel haben: Der Cursor wird nach jeder Tastenbetätigung an das Ende springen, der Passwort-Manager wird nicht funktionieren und vielleicht wird's auch flackern.

Dein Code enthält JavaScript-Fehler, den dir ein Debug-Tool deines Browsers (Fehlerkonsole oder Firebug in Firefox, Entwicklerwerkzeuge in Chrome oder IE) anzeigen wird. Der erste, der mir auffällt, ist in Zeile 19:

user profile iconArbengie hat folgendes geschrieben Zum zitierten Posting springen:
ausblenden Quelltext
 
19:
{ ... }
        var lastLetter = slice(text.length - 1, 1);

slice ist eine Methode des String-Objekts, keine globale Funktion. Wie sie angewendet wird, steht in der SELFHTML-Referenz.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19288
Erhaltene Danke: 1743

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 01.08.11 18:18 
user profile iconArbengie hat folgendes geschrieben Zum zitierten Posting springen:
ja ok :) Aber es muss doch sicherlich auch ne "manuelle" Möglichkeit geben, so wie ich das vor hatte.^^
Da ist aber die Frage wozu du eine schlechtere Lösung statt der bereits vorhandenen haben möchtest. :gruebel: