• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Es regnet, ist neblig und kalt, alle sind krank und der Chef wird zunehmend cholerisch. Das Thema des Monats ist also folgerichtig --> Das Grau(en)
    Wir sind gespannt, war Euch dazu einfällt! Zum Wettbewerb --> Klick

Javascript für Input-Fields

mschoening

Gelbe Schleswiger Reinette
Registriert
21.02.07
Beiträge
1.764
Hi,
ich habe ein input-Feld (type=text) und dem Feld ein value gegeben. Jetzt hätte ich gerne ein Javascript das onblur mir den Inhalt des values löscht. Habt ihr zufällig so was?
 

dewey

Gewürzluiken
Registriert
01.05.06
Beiträge
5.721
brauchst ja nur mit document.formularname.feldname.value ansprechen und das dann auf "" setzen oder?
 

mschoening

Gelbe Schleswiger Reinette
Registriert
21.02.07
Beiträge
1.764
Hi,
ich habe es jetzt folgendermaßen gelöst:

Code:
<script type="text/javascript" charset="utf-8">
    <!--
    function clearUsername(username) {
        if (username=="Benutzername") {
            document.formname.username.value="";
        }
    }
    
    function clearPassword(password) {
        if (password=="******") {
            document.formname.password.value="";
        }
    }
    //-->
</script>
Code:
<form name="formname" action="#" method="get" accept-charset="utf-8">
    <p>
        <span class="username"><em>Benutzername:</em></span> <input class="inputtxt" type="text" name="username" value="Benutzername" onFocus="clearUsername(this.value);" />
    </p>
    
    <p>
        <span class="password"><em>Kennwort:</em></span> <input class="inputtxt" type="password" name="password" value="******" onFocus="clearPassword(this.value);" />
    </p>
    
    <p class="no-border last">
        <input type="image" src="images/login_button.png" />
    </p>
</form>
Der Vorteil bei dieser Methode ist, dass nicht bei jedem onFocus das Feld gelöscht wird sondern nur beim ersten Mal (wenn Benutzername bzw. ****** als value angegeben ist). Das habe ich deshalb gemacht, damit wenn jemand sich vertippt haben sollte und wieder ein Feld zurückspringt nicht der ganze Inhalt gelöscht wird.

Vielleicht gibt es dafür ja noch eine bessere Lösung. Vorschläge sind gerne gesehen. Mit Javascript kenne ich mich leider noch nicht so gut aus. :eek:

Thanks,
Max
 

mschoening

Gelbe Schleswiger Reinette
Registriert
21.02.07
Beiträge
1.764
Hi,
habe das ganze noch ein wenig verinfacht:

Code:
<script type="text/javascript" charset="utf-8">
    <!--
    function clearField(field) {
        if (field=="Benutzername") {
            document.formname.username.value="";
        }
        
        if (field=="******") {
            document.formname.password.value="";
        }
    }
    //-->
</script>

Code:
<form name="formname" action="#" method="get" accept-charset="utf-8">
    <p>
        <span class="username"><em>Benutzername:</em></span> <input class="inputtxt" type="text" name="username" value="Benutzername" onFocus="clearField(this.value);" />
    </p>
    
    <p>
        <span class="password"><em>Kennwort:</em></span> <input class="inputtxt" type="password" name="password" value="******" onFocus="clearField(this.value);" />
    </p>
    
    <p class="no-border last">
        <input type="image" src="images/login_button.png" />
    </p>
</form>

Eine Funktion reicht ja auch aus.
 

ma.buso

Châtaigne du Léman
Registriert
16.04.05
Beiträge
820
Du solltest
Code:
document.getElementById('username).value = '';

// und

document.getElementById('password').value = '';
benutzen, da es sonst zu Kompatibilitätsproblemchen kommen kann.
 

mschoening

Gelbe Schleswiger Reinette
Registriert
21.02.07
Beiträge
1.764
Ok. Sehe ich das dann richtig, dass ich den input-Feldern eine ID geben muss?