• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

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?
 
brauchst ja nur mit document.formularname.feldname.value ansprechen und das dann auf "" setzen oder?
 
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. :-!

Thanks,
Max
 
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.
 
Du solltest
Code:
document.getElementById('username).value = '';

// und

document.getElementById('password').value = '';
benutzen, da es sonst zu Kompatibilitätsproblemchen kommen kann.
 
Ok. Sehe ich das dann richtig, dass ich den input-Feldern eine ID geben muss?