Christian S.: Nur zeichen x bis y in einer Textbox selektieren.

Hi,

ich habe eine Textbox, welches als Datumseingabemöglichkeit fungiert.

Dort möchte ich, wenn man hineinklickt, dass der erste Teil vom Datum selektiert wird. also die ersten beiden Zeichen.

Mit den Cursortasten hoch und runter sollen die Tage hinauf/hinabgezählt werden. Mit den Tasten "rechts" und "links" soll zum nächsten datums element (also hier zb Monate) gesprungen werden und dann eben die Zeichen 4 und 5 selektiert werden (Zeichen 3 ist der Punkt).

Also man soll mit den Cursortasten in dem Datum navigieren können.

Wie ist diese Teilselektion möglich?

Gruß
Christian

  1. Vielleicht kannst du ja mit folgendem Artikel was anfangen: http://aktuell.de.selfhtml.org/artikel/javascript/bbcode/.

  2. Also man soll mit den Cursortasten in dem Datum navigieren können.
    Wie ist diese Teilselektion möglich?

    Nur sehr umständlich, weil sowohl der Teil "Selektion" als auch der Teil "Navigation" stark browserspezifisch gelöst ist und in manchen Browsern gar nicht funktioniert. Eventuell könntest du dir ja sowas vorstellen:

    http://test.anaboe.net/datum.html

    Nur als Demo, es fehlen natürlich die Felder für Monat und Jahr und das CSS ist sicher noch verbesserungswürdig.

    Siechfred

    --
    Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
    1. hi,

      Nur sehr umständlich, weil sowohl der Teil "Selektion" als auch der Teil "Navigation" stark browserspezifisch gelöst ist und in manchen Browsern gar nicht funktioniert.

      Ja, halte ich auch nicht für praktikabel, bzw. mit vertretbarem Aufwand realisierbar.

      Eventuell könntest du dir ja sowas vorstellen:

      http://test.anaboe.net/datum.html

      Nur als Demo, es fehlen natürlich die Felder für Monat und Jahr und das CSS ist sicher noch verbesserungswürdig.

      Das könnte man ja mit der Wunschvorstellung des OP kombinieren - statt einem Inputfeld für's komplette Datum jeweils eins für die Bestandteile Tag, Monat, Jahr.
      Über diesen könnte man Tastaturevents abfangen, und dann den aktuellen Wert hoch/runterzählen, bzw. zum vorherigen/nächsten Feld wechseln.

      Das dürfte einfacher zu realisieren sein, als das Herumhantieren mit TextRange-Objekten.

      Per CSS lässt es sich auch noch so formatieren, dass man den Unterschied zwischen "drei Textfelder" vs. "ein Textfeld" nicht mehr sieht.
      Man bemerkt ihn dann höchstens noch, wenn man das ganze ohne JS bedienen muss.

      gruß,
      wahsaga

      --
      /voodoo.css:
      #GeorgeWBush { position:absolute; bottom:-6ft; }
      1. Hello out there!

        Eventuell könntest du dir ja sowas vorstellen:
        http://test.anaboe.net/datum.html
        Nur als Demo, es fehlen natürlich die Felder für Monat und Jahr

        Na da werden sich die Nutzer aber freuen.

        Wie lange bruachst du, um per Tastatur 6 oder 8 Ziffern einzutippen?
        Wie lange brauchst du, um mit Maus oder Tastatur mit '+' und '-' das Datum einzustellen?

        Déjà-vu

        Das könnte man ja mit der Wunschvorstellung des OP kombinieren - statt einem Inputfeld für's komplette Datum jeweils eins für die Bestandteile Tag, Monat, Jahr.

        Nein!! Bitte nicht! Ich halte das für groben Unfug, denn das ist alles andere als nutzerfreundlich.

        Kurzversion | Langversion

        See ya up the road,
        Gunnar

        --
        „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
        1. Nein!! Bitte nicht! Ich halte das für groben Unfug, denn das ist alles andere als nutzerfreundlich.

          Es gibt den Kontext, in dem das tatsächlich Unfug ist, es gibt aber auch den Kontext, wo es durchaus sinnvoll sein kann. Weißt du, in welchem Kontext der OP das haben will?

          Siechfred

          --
          Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
          1. Hello out there!

            es gibt aber auch den Kontext, wo es durchaus sinnvoll sein kann.

            Hilf mir mal auf die Sprünge; mir fällt kein solcher ein.

            (Es sei denn, der OP möchte mit HTML/JavaScript die GUI eines Gerätes erstellen, das nur über wenige Eingabeknöpfe verfügt, nicht aber über eine alphanumerische Tastatur oder wenigstens Zehnertastatur; ein Fahrkartenautomat bspw. Dann hätte der OP das aber erwähnt/erwähnen sollen. „Wenn man hineinklickt“ und „mit den Cursortasten“ [OP] lässt nicht darauf schließen.)

            See ya up the road,
            Gunnar

            --
            „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
            1. es gibt aber auch den Kontext, wo es durchaus sinnvoll sein kann.
              Hilf mir mal auf die Sprünge; mir fällt kein solcher ein.

              Eine GUI-Anwendung, bei der es nur die Maus gibt (mir fällt dieser dämliche Begriff nicht ein...), so wie sie bspw. auf Messen zu Werbezwecken hingestellt werden.

              Siechfred

              --
              Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
              1. Hello out there!

                Eine GUI-Anwendung, bei der es nur die Maus gibt

                ACK.

                (mir fällt dieser dämliche Begriff nicht ein...)

                Mir auch nicht. Vielleicht hätte ich ihn dann auch nicht verstanden, wenn er dir eingefallen wäre. ;-)

                Dieser Kontext ist hier allerdings nicht gegeben: „mit den Cursortasten“ [OP]

                Und die „Lösung“ mit den '+'/'-'-Buttons ist wohl alles andere als barrierefrei. Ein Datumeingabefeld wird ein Blinder problemlos benutzen können, wie kommt er aber mit sechs Buttons klar? Selbst wenn diese über entsprechende Labels verfügen, dürfte das Hin- und Hernavigieren sehr zeitaufwendig sein, da die Rückmeldung über jeden Knopfdruck (Änderung des eingestellten Datums) vom Screenreader vorgelesen werden müsste.

                Nochmal ins OP geschaut: Eine reine Buttonlösung ist hier ja auch gar nicht gewünscht: „ich habe eine Textbox“. Gut, wenn diese vorhanden ist, kann eine ZUSÄTZLICHE Eingabemöglichkeit „mit den Cursortasten“ nicht schaden.

                See ya up the road,
                Gunnar

                --
                „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
                1. hi,

                  Und die „Lösung“ mit den '+'/'-'-Buttons ist wohl alles andere als barrierefrei. Ein Datumeingabefeld wird ein Blinder problemlos benutzen können, wie kommt er aber mit sechs Buttons klar?

                  Mein Vorschlag schliesst ein "normales" Ausfüllen des Formulars auf die herkömmliche Methode m.E. nicht aus.

                  gruß,
                  wahsaga

                  --
                  /voodoo.css:
                  #GeorgeWBush { position:absolute; bottom:-6ft; }
                  1. Mein Vorschlag schliesst ein "normales" Ausfüllen des Formulars auf die herkömmliche Methode m.E. nicht aus.

                    Meiner übrigens auch nicht, ein normales Eingeben des Tages ist ebenso möglich wie das Hoch- und Runterklicken mit den Buttons.

                    Siechfred

                    --
                    Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.
                    1. hi,

                      Meiner übrigens auch nicht

                      Ja, mein Vorschlag war ja auch nur einer zur Erweiterung des von dir gebrachten Beispiels.

                      gruß,
                      wahsaga

                      --
                      /voodoo.css:
                      #GeorgeWBush { position:absolute; bottom:-6ft; }