thomas: Password Feld mit Default-Text füllen

Hallo

Wenn ich auf facebook.com gehe erscheinen oben die beiden Felder um sich anzumelden. Das zweite Feld ist ein Feld typ:password. Allerdings als Standardwert steht "Passwort". Klick ich rein und schreibe was, verschwindet der Text und die Punkte kommen. Wie wird sowas gemacht.

Bei meinem Feld '<input type="password" name="pass" id="pass" value="Password" class="ff250">' erscheint schon der default-value als punkte und wenn ich reinklicke verschwindet der Wert auch nicht.

Danke für eure Tipps.

Gruss
Thomas

  1. Hallo

    Wenn ich auf facebook.com gehe erscheinen oben die beiden Felder um sich anzumelden. Das zweite Feld ist ein Feld typ:password. Allerdings als Standardwert steht "Passwort". Klick ich rein und schreibe was, verschwindet der Text und die Punkte kommen. Wie wird sowas gemacht.

    Allerhöchstwahrscheinlich mit JavaScript.

    Bei meinem Feld '<input type="password" name="pass" id="pass" value="Password" class="ff250">' erscheint schon der default-value als punkte und wenn ich reinklicke verschwindet der Wert auch nicht.

    Das sind die Werte, die der Browser einträgt, weil du ihm bei einem früheren Loginvorgang gesagt hast, er möge sich die Werte dieses Forumlars merken.

    Tschö, Auge

    --
    Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
    Terry Pratchett, "Wachen! Wachen!"
    Veranstaltungsdatenbank Vdb 0.3
  2. Bei meinem Feld '<input type="password" name="pass" id="pass" value="Password" class="ff250">' erscheint schon der default-value als punkte und wenn ich reinklicke verschwindet der Wert auch nicht.

    <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="this.type='password'; this.value=''">
    Das dürfte die Lösung sein :)

    1. Hallo,

      <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="this.type='password'; this.value=''">
      Das dürfte die Lösung sein :)

      eher nicht: Mich würde es schon sehr stören, wenn jedesmal der Feldinhalt gelöscht wird, sobald das Feld den Focus erhält. Wenn schon, dann darf dieses Löschen nur passieren, solange der Typ noch "text" ist:

      <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="if (this.type=='text') this.value=''; this.type='password';">

      Jetz' besser. :-)

      So long,
       Martin

      --
      Zwischen Leber und Milz
      passt immer noch'n Pils.
      1. Hi,

        »» <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="if (this.type=='text') this.value=''; this.type='password';">

        Jetz' besser. :-)

        AFAIR erlauben einige Browser das Ändern des type-Attributs von input-Elementen nicht, man müßte also eher das vorhandene <input type="text"> durch ein <input type="password"> ersetzen.

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen per Mail sind unverschämt, werden ignoriert. Das Forum existiert.
        1. Hallo,

          »» »» <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="if (this.type=='text') this.value=''; this.type='password';">

          AFAIR erlauben einige Browser das Ändern des type-Attributs von input-Elementen nicht

          hmm, SELFHTML listet die type-Eigenschaft tatsächlich als "nur lesen". Ich habe den Vorschlag, diese Eigenschaft dynamisch zu verändern, aber schon häufig gelesen - vermutlich wird es also in der Praxis funktionieren.
          Wenn man Glück hat. ;-)

          man müßte also eher das vorhandene <input type="text"> durch ein <input type="password"> ersetzen.

          Dann hätte sich auch das Löschen von this.value erübrigt. Aber wie will ein Element "sich selbst" aus seinem eigenen Eventhandler heraus löschen und ersetzen?

          So long,
           Martin

          --
          Man sollte immer wissen was man sagt
           - aber auf keinen Fall alles sagen, was man weiß.
          1. Hallo,

            »» man müßte also eher das vorhandene <input type="text"> durch ein <input type="password"> ersetzen.

            Dann hätte sich auch das Löschen von this.value erübrigt. Aber wie will ein Element "sich selbst" aus seinem eigenen Eventhandler heraus löschen und ersetzen?

            ein Blick in den Quelltext (und die JS-Datei) verrät doch, wie sie es gemacht haben.
            Per JS wird das eigentliche Passwort Inputfeld mit einem anderen 'normalen' Inputfeld überlagert, und dessen Default-Value auf "Password" gesetzt.

            Gruß Gunther

          2. Hi,

            AFAIR erlauben einige Browser das Ändern des type-Attributs von input-Elementen nicht

            hmm, SELFHTML listet die type-Eigenschaft tatsächlich als "nur lesen". Ich habe den Vorschlag, diese Eigenschaft dynamisch zu verändern, aber schon häufig gelesen - vermutlich wird es also in der Praxis funktionieren.

            </archiv/2008/4/t170084/>

            MfG ChrisB

            --
            Light travels faster than sound - that's why most people appear bright until you hear them speak.
      2. Hi,

        ich nochmal ...

        »» <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="if (this.type=='text') this.value=''; this.type='password';">
        Jetz' besser. :-)

        Mit einer günstig gesetzten Klammer wird's noch ordentlicher:

        <input type="text" name="pass" id="pass" value="Password" class="ff250" onfocus="if (this.type=='text') { this.value=''; this.type='password'; }">

        Die ungeklammerte Version hätte auch funktioniert, dann würde die Zuweisung this.type='password' aber jedesmal ausgeführt. Ist nicht schlimm, aber auch nicht besonders elegant.

        Ciao,
         Martin

        --
        You say, it cannot be love if it isn't for ever.
        But let me tell you: Sometimes, a single scene can be more to remember than the whole play.