Joachim Fröhlich: maxlength

problematische Seite

Guten Morgen, maxlength bei der Eingabe funktioniert auf dem Desktop aber nicht auf dem Samsung Handy. Kennt jemand das Problem? Wenn ja, was ist zu tun? J. Fröhlich

Edit Rolf B: URL korrigiert

  1. problematische Seite

    Hallo

    maxlength bei der Eingabe funktioniert auf dem Desktop aber nicht auf dem Samsung Handy.

    Das Attribut maxlength ist seit Urzeiten Bestandteil von HTML. Es würde mich wundern, wenn das irgendwo nicht funktioniert. Allerdings können wir mit „auf dem Samsung Handy“ wohl nix anfangen. Es gibt mittlerweile hunderte Modelle in unterschiedlichen Software-Versionsständen mit unterschiedlicher Softwareausstattung.

    Tschö, Auge

    --
    „Habe ich mir das nur eingebildet, oder kann der kleine Hund wirklich sprechen?“ fragte Schnapper. „Er behauptet, nicht dazu imstande zu sein“ erwiderte Victor. Schnapper zögerte (…) „Nun …“ sagte er schließlich, „ich schätze, er muss es am besten wissen.“ Terry Prattchett, Voll im Bilde
    1. problematische Seite

      Guten Morgen, es wäre schön, wenn das der eine oder andere mal auf seinem Handy ausprobieren würde, vielleicht liegt es ja an meinem Samsung. J. Fröhlich

      1. problematische Seite

        Hallo Joachim,

        du erwartest jetzt sicher nicht, dass ich deinen Quellcode auf meinen Webserver oder als Beispiel ins Wiki lade. Vor allem nicht, wenn Styles fehlen:

        <link rel="stylesheet" type="text/css" href="../html/fusion.css">
        <link rel="stylesheet" type="text/css" href="../html/style.css">
        <link rel="stylesheet" type="text/css" href="../html/site.css"> 
        

        Unter welcher URL kann ich die Seite mit meinem Handy abrufen? Github liefert ja nur den Sourcecode. Hast Du Github Pages dafür definiert?

        Wenn ich dein HTML als Datei ausführe, funktioniert gar nichts. Das Eingabefeld ist blockiert. Wie soll das gehen?

        Rolf

        --
        sumpsi - posui - obstruxi
        1. problematische Seite

          Guten Morgen Rolf, in der Adresse fehlte ein Slash. Sorry. Jetzt müsste es funktionieren. Joachim

          1. problematische Seite

            Hallo Joachim Fröhlich,

            ein Slash ist bei Dir aber eine recht umfangreiche Sache 😉

            https://github.com/joafroehlich/MaTest

            vs

            https://joafroehlich.github.io/MaTest/

            Aber ich habe ja jetzt auf anderem Weg eine Antwort für Dich gefunden.

            Rolf

            --
            sumpsi - posui - obstruxi
            1. problematische Seite

              Lieber Rolf,

              danke für Deine Hinweise. Ja, die überschüssigen Zeichen werden entfernt, ist allerdings nicht das, was ich mir wünsche. Suche weiterhin nach einer Lösung. Joachim

              1. problematische Seite

                Hallo Joachim,

                dann wirst Du wohl mit JavaScript im input-Event die Länge manüll überwachen müssen.

                Beachte: Man muss nicht für jedes HTML Element das Script individuell schreiben. Viele Events "blubbern" im DOM nach oben und können auf einem gemeinsamen Elternelement behandelt werden.

                Setze mal dieses Script ans Ende des Body:

                <script>
                  document.body.addEventListener("input", function(inputEvent) {
                    const eingabeFeld = inputEvent.target;
                    if (eingabeFeld.maxLength > 0 && eingabeFeld.value.length > eingabeFeld.maxLength) {
                      eingabeFeld.value = eingabeFeld.value.substr(0, eingabeFeld.maxLength);
                    }
                  });
                </script>
                

                Rolf

                --
                sumpsi - posui - obstruxi
                1. problematische Seite

                  Rolf, danke erstmal für Deine Mühe. Probiere den Code aus und versuche ihn nachzuvollziehen. Joachim

                  1. problematische Seite

                    Rolf, funktioniert wie gewünscht. Um den Code gut zu verstehen, brauche ich noch etwas Zeit. Joachim

      2. problematische Seite

        Hallo Joachim,

        wenn Selfhtml ja wüsste, was Selfhtml alles weiß... zu maxlength haben wir ein Beispiel hier im Wiki

        And Guess What - maxlength funktioniert auf dem Desktop, aber nicht auf meinem Handy. Weder mit Chrome, noch mit Samsung Internet (was auch ein Chromium ist, soweit ich weiß).

        Es liegt also nicht an deinem Handy.

        Sondern an einem 10 Jahre alten Chrome-für-Android Bug!. Die überschüssigen Zeichen sollten aber entfernt werden, wenn das Feld den Fokus verliert.

        Rolf

        --
        sumpsi - posui - obstruxi
        1. problematische Seite

          Moin,

          wenn Selfhtml ja wüsste, was Selfhtml alles weiß... zu maxlength haben wir ein Beispiel hier im Wiki

          And Guess What - maxlength funktioniert auf dem Desktop, aber nicht auf meinem Handy. Weder mit Chrome, noch mit Samsung Internet (was auch ein Chromium ist, soweit ich weiß).

          Es liegt also nicht an deinem Handy.

          Sondern an einem 10 Jahre alten Chrome-für-Android Bug!. Die überschüssigen Zeichen sollten aber entfernt werden, wenn das Feld den Fokus verliert.

          noch ein Grund Firefox auch auf dem Mobiltelefon zu nutzen 😉 Der hält sich an die Vorgaben. (Und natürlich ein Grund für serverseitige Validierung.)

          Viele Grüße
          Robert

          1. problematische Seite

            Lieber Robert,

            noch ein Grund Firefox auch auf dem Mobiltelefon zu nutzen 😉 Der hält sich an die Vorgaben. (Und natürlich ein Grund für serverseitige Validierung.)

            den habe ich jetzt ein paar Jahre auf meinem Android verwendet und mag das Handling sehr. Als neuer GrapheneOS-Nutzer muss ich mich jetzt mit Vanadium (einem Chromium) begnügen, weil das Team den Firefox als grundsätzlich besser angreifbar einstuft, was wohl zum Einen mit der Plugin-Struktur zusammenhängt, die sie dem Vanadium wohl herausoperiert haben, zum Anderen aber auch mit den sehr permissiven Voreinstellungen bei den Privatsphäre-Einstellungen.

            Liebe Grüße

            Felix Riesterer