Ulrich Maurer: Code für Eingabezeile

hallo,

ich habe folgenden Code für eine Eingabezeile

function clearIt(formular)
{
formular.submit();
   formular.input.focus();
   formular.input.select();
   return (false);
}

Die Aufgabe des Codes:
Er markiert den Text nach dem Absenden und lässt ihn in der Zeile stehen, das funktioniert einwandfrei.

Ich möchte aber nun das der Text nach dem Absenden in der Eingabezeile gelöscht wird, also nichts mehr drin steht.

Wie kann ich das ändern?

  1. formular.input.value = "";

    probier das mal :)

    1. formular.input.value = "";

      probier das mal :)

      Vielen Dank, hat funktioniert!

  2. Hallo,

    document.formlarname.elementname.value="" alte Browser

    document.getElementById(elementname).value="" neue Browser

    für elemntname muss eine id=name im Input-Tag stehen.

    z.B.:

    <INPUT id="Eingabefeld1" value=""><label for="Eingabefeld1" tabindex=7 altkey=l onclick='Eingabefeld1.value=""'>löschen</label>

    Das gesamte Formular löschen geht mit document.formularname.reset();

    Im Prinzip würde auch document.forms[1].elements[1].defaultValue="einWort" gehen.

    Aber es gibt immer wieder Probleme mit UniversalBrowserRead und UniversalBrowserWrite bei den Sicherheitseinstellungen beim Netscape-Browser. Daher ist die Funktion von Formularmanipulationen nie sicher ! Ein reset-Button ist aber ergonomisch betrachtet umstritten, da der Besucher auch versehentlich auf diesen Button klicken kann. Da sollte zumindest noch eine Bestätigung mit confirm erfolgen.

    Wenn aber das Feld eh markiert ist, braucht der User ja nur auf Entf bzw. del zu drücken..
    Funktioniert select aber mit jedem Browser ???
    Daher empfehle ich label einzusetzen, mit dem man nicht nur behindertengerecht und ergonomisch arbeitet, sondern auch erlaubt jedes Feld einfacher zu löschen.
    Wir experimentieren schon seit Wochen mit der Suche nach dem perfekten Formular, scheitern aber immer wieder an Browsereinschränkungen oder deaktivierten JavaScript.