Autocomplete in HTML-Formularen nur teilweise unterdrücken (ungelöst)

Autocomplete ist ja eine gute Sache, wird aber ärgerlich, wenn man Formulare zu editieren hat, die bereits einen Inhalt aufweisen und das besagte Feld schon viele ähnliche Einträge hatte. Zudem passiert in diesem Fall der ungute Umstand, dass man beim Editieren gezielt  in das Feld an der zu änderten Stelle klickt, der Text-Cursor aber ans Ende springt wenn man auch nur knapp mit der Maus aus dem Formularfeld rutscht. Wenn man nicht aufpasst, schreibt man nicht im Text, sondern am Ende weiter.

Auch ein Doppelklick hilft nicht. Man muss erst das Autocomplete so “deaktivieren”, dass es nichts mehr findet. Sobald nämlich am Ende der Zeile etwas neues Neues steht, kann man auch innerhalb der Zeichenkette editieren. Generell <input autocomplete="off"> setzen ist auch nicht erwünscht, denn oft genug will man ja diese praktische Funktion nutzen.

Unglücklicher Versuch mit zusätzlichen Leerzeichen

Eine erste Variante fand ich, indem ich per JavaScript ein Leerzeichen nach dem Laden des Dokuments an den Text im Formularfeld hänge. So erfolgt das “Deaktivieren”. Das oder die Leerzeichen werden vom Server-Skript ohnehin der überschüssigen Leerzeichen beraubt. Die if-Anweisung habe ich, weil mein Formular nicht immer besagtes Feld aufweist und ich nicht im Server-Script differenzieren wollte.

<script type="text/javascript">
  function myOverrideAutoComplete(myInput){
    if (typeof(myInput) != 'undefined' && myInput!= null){
      document.getElementById(myInput).value += " ";
    }
  }
</script>
<body onload="myOverrideAutoComplete('myInputItem')">

Serverseitig arbeitet bei mir ein Perl-Script, hier werden vor dem Speichern Leerzeichen und Umbrüche aller Felder gelöscht:

$passed{$key} =~ s/^\s+|\s+$//g;

Unter PHP würde das trim() machen:

$passed[$key]= trim($passed[$key]);

Ernüchterung nach ein paar Einsätzen

Es ist noch optimal, weil auch Zeichenketten vom Stil Text+Blank in die Autocomplete-Vorschläge gelangen und dieses dann wie zuvor ungut aktivieren. Mögliche Lösungen:

  • Den initialen Gedanken weiterführen und per JavaScript das Autocomplete weiter austricksen?
  • Ein einfaches On/Off am autocomplete-Attribut mittels Button daneben?
  • Zeitversetztes das Autocomplete deactiveren (onmouseout)?
  • Nack Klick in das Formularfeld den Cursor zwingen darin zu bleiben (mit Buffer rundherum)?

Similar Posts

  • Email und WordPress

    Thema: Ubuntu – MariaDB – WordPress – Apache – CleanBlogg Theme. Zum Benachrichtigen von abonnierten Lesern und andere Schritte ist es sinnvoll, dass WordPress Emails an die Leser und besonders den Betreiber des Blogs schicken kann. Leider geht viel davon nicht alleine und die entsprechenden Plugins sind sehr eigenwillig. Hier eine Liste meiner Versuche. Versionen Post SMTP jedenfalls 1.7.2 uns/bis 1.9.5…

  • |

    A1 Fair-Use-Regelung ist nicht fair im Ausland

    Nach den Corona-Jahren kann man 2022 schon den Wunsch verspüren öfters und länger wegzufahren. Ich mache das auch beruflich als Wanderbuch-Autor bei Rother (Italien) und für die eigene Website Provence-Guide.net (Frankreich). So kam es, dass ich im September zusammengerechnet dieses Jahr 2022 über vier Monate im europäischen Ausland war. Hier gilt die EU-Roaming-Richtline, die keinen…

  • Nebenwirkungen eines twiki-Hacks

    Eine twiki-Instanz auf unserem Server wurde für Phishing-Zwecke missbraucht. Wir wurden durch unseren Serverprovider darauf aufmerksam gemacht. Dieser wiederum wurde von clean-mx.de kontaktiert. Dumm lief, dass uns der Provider Montag früh die IP abdrehte weil die erste Meldung dazu nicht durchkam. Folgende exemplarische Dokumentation ist keine fachgerechte Anleitung zum sauberen Entfernen solcher unerwünschter Zu- und Eingriffe!…

  • Virtual Host für Apache auf Ubuntu

    Thema: Ubuntu – MariaDB – WordPress – Apache – CleanBlogg Theme. Neuen Virtual Host für  Apache unter Ubuntu anlegen Unter Ubuntu ist Apache so konfiguriert, dass einzelne Web-Domains und Subdomains in je einer Konfigurationsdatei definiert sind. Sie müssen in einem anderen Verzeichnis verlinkt sein und anschliessend muss der Webserver noch neu geladen werden. Konfigurationsdatei einer WordPress-Domain Der Code-Block zeigt eine einfache Konfigurationsdatei:…

  • Umstieg auf vertikale Maus

    Letztes Update: 2026.02.24 Aufgrund meiner nebenberuflichen Tätigkeit als Obstbaum-Schneider (Tiroler Baumwart), habe ich mir nun einen “Tennisarm” eingehandelt. Die Diagnose lautet so: Ausgeprägte Epicondylitis humeri radialis mit beginnender mukoider DegenerationEnthesiopathische Ansatzverkalkung der Trizepssehne Diese ungute Entzündung einer Sehe im Ellbogen ist nur mit viel Physiotherapie, Ergotherapie und Elektrotherape in den Griff zu bekommen. Aber auch…

  • |

    Unter Leaflet OSM-Karten bei Zoomwechsel tauschen

    Es gibt mehrere Anbieter, die Kacheln laden lassen. Jedoch sind oft nicht alle Zoombereiche verfügbar. Analog gilt diese Einschränkung auch für unterschiedliche geographische Bereiche. Es werden zwei Ebenen mit Karten-Kacheln definiert und diese Layer werden beim Zoom-Wechsel ausgetauscht. Soweit so trivial, aber der Code hat ein paar Mängel: Mit if(map.getZoom() > 16){} und else {} fügt…

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.