input automatisch leeren

  • Hallöchen,
    wie kann man eigentlich ein input feld beim anklicken (wie :focus) automatisch leeren?
    Also zum Beispiel:
    |--------------------------------|
    | Nickname |
    |--------------------------------|


    und dann nachdem anklicken
    |--------------------------------|
    | | |
    |--------------------------------|


    Hmmm ich glaub die Zeichnung war unnötig.



    Mit freundlichen Grüßen,
    Philipp Escher

  • Indem du das Attribut value des inputs änderst.


    Ich weiß jetzt gerade nur, wie es mit jQuery funktioniert, es geht aber bestimmt auch ohne:

    Code
    $('input').focus( function() {
        $(this).val('');
    });


    Das Problem ist jetzt natürlich, dass es immer geleert wird, auch, wenn dort Eingaben vom Benutzer drinstehen.
    Das könnte man mit einer if-Abfrage vermeiden:

    Code
    $('input').focus( function() {
        if ($(this).val() == 'Nickname') {
            $(this).val('');
        }
    });
  • Eines meiner Skripte:


    und so wird das Script aufgerufen:

    Code
    if(!("placeholder" in document.createElement("input"))){
        placeholder(document.getElementById("myElement"), document.getElementById("myElement").getAttribute("placeholder"), "#555", "#333");
    }

    (Ich hoffe es klappt, habe das aus meiner jQuery-Erweiterung umgeschrieben und noch nicht getestet :D)


    Normalerweise nutze ich diese Erweiterung um die placeholder-Funktion für den IE zu faken:

    Code
    <input type="text" name="blabla" placeholder="Ihr Name" />
  • Was genau geht nicht?


    mit document.getElementsByTagName(Tagname) bekommst du ein Array mit allen Elementen namens Tagname zurück^^


    Edit: Übrigens funktionierte oberer Code nicht, aber dieser hier:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!