Christian S.: Verhindern, dass Bereiche einer TextBox markiert werden

Hallo,

ich habe eine TextBox mit einem Datumswert der Form "dd.MM.yyyy".

Ich möchte verhindern, dass der Anwender die Punkte markieren kann, um eine kleine Eingabehilfe zu bieten, und Anwenderfehler zu vermeiden, da man ja nur das Datum an sich, nicht aber die Punkte ändern können soll.

D.h. wenn er z.B. irgendwo den Cursor in das Jahr setzt, und links rüber zieht (mit gedrückter Maustaste), soll die Markierung spätestens beim Punkt stehen bleiben und nicht weitergehen.

(Wie) ist das möglich?

Gruß!

  1. Gudn!

    Andere Frage:

    Wenn Du das willst, warum nimmst Du nicht einfach 3 Eingabefelder? Die könntest Du theoretisch sogar so formatieren, dass sie aussehen wie ein einziges.

    Und man kan den Tabulator benutzen!

    Gruß, Samoht

    --
    fl:| br:> va:) ls:< n4:( ss:) de:] js:| mo:}
    "Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."
    (Kristian Wilson, Nintendo, 1989)
    1. Hm,

      das wäre ja zu einfach ;-)

      Ich finde es einfach schöner, wenn man eine "JavaScript Klasse" hat, mit der man einfach EIN textfeld um ein "datums-behaviour" erweitern kann.

      Außerdem wären ja dann die Breiten relativ fix, d.h. wenn jemand eine 11 als Tag eingibt, ist diese u.U. (je nach Schriftart) vielleicht kürzer als bei einer 30. Das hätte den Effekt, dass rechts oder links von den Punkten immer ein hässlicher Abstand wäre.

      Gruß!

      1. Gudn!

        Außerdem wären ja dann die Breiten relativ fix, d.h. wenn jemand eine 11 als Tag eingibt, ist diese u.U. (je nach Schriftart) vielleicht kürzer als bei einer 30. Das hätte den Effekt, dass rechts oder links von den Punkten immer ein hässlicher Abstand wäre.

        Pedant! ;-)

        Gruß, Samoht

        --
        fl:| br:> va:) ls:< n4:( ss:) de:] js:| mo:}
        "Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."
        (Kristian Wilson, Nintendo, 1989)
      2. Hallo,

        Außerdem wären ja dann die Breiten relativ fix, d.h. wenn jemand eine 11 als Tag eingibt, ist diese u.U. (je nach Schriftart) vielleicht kürzer als bei einer 30. Das hätte den Effekt, dass rechts oder links von den Punkten immer ein hässlicher Abstand wäre.

        kleiner Tipp: Die Ziffern haben sogar bei den meisten Proportionalschriften eine konstante Breite - probier's mal mit ein paar willkürlich ausgewählten Schriften aus. ;-)

        Ciao,
         Martin

        --
        Der Stress von heute ist die gute alte Zeit von morgen.
  2. Hallo,

    ist das möglich?

    Nein.
    Und das, was man mit viel Gefummel hinbekommen würde, wäre alles als benutzerfreundlich und intuitiv, sondern würde eher Verwirrung stiften und das Gegenteil davon tun als »eine kleine Eingabehilfe zu bieten«.

    Mathias

    1. Hi,

      Nein.
      Und das, was man mit viel Gefummel hinbekommen würde

      ist das ein Widerspruch? Gehts gar nicht, oder gehts nur mit viel Gefummel?

      Gruß!

      1. Hallo,

        Gehts gar nicht, oder gehts nur mit viel Gefummel?

        Das Markieren kannst du nicht verhindern, höchstens nachträglich auslesen, was markiert wurde und ggf. je nach Browser die Markierung ändern, sodass die Punkte herausgenommen werden. Sprich, Anwender markiert etwas und dann haut plötzlich dein JavaScript zu.
        Ich sehe ehrlich gesagt nicht, inwiefern deine Idee dem Anwender eine wirkliche Hilfestellung gäbe, selbst wenn sie umsetzbar wäre. Das ist von hinten durch die Brust ins Auge anstatt direkt einfach und idiotensicher.

        Mathias

  3. Hallo Christian,

    ich habe eine TextBox mit einem Datumswert der Form "dd.MM.yyyy".

    das ist auf jeden Fall eine gute Idee, ein Textfeld und nicht drei Auswahlfelder.

    Ich möchte verhindern, dass der Anwender die Punkte markieren kann, um eine kleine Eingabehilfe zu bieten, und Anwenderfehler zu vermeiden, da man ja nur das Datum an sich, nicht aber die Punkte ändern können soll.

    Möchtest Du das sinnvolle Kopieren eines kompletten Datumswertes verhindern und somit die Eingabe erschweren? Die beste Javascript-Eingabehilfe ist ein Kalenderchen mit Datumsauswahl.

    Freundliche Grüße

    Vinzenz

    1. Hi,

      Möchtest Du das sinnvolle Kopieren eines kompletten Datumswertes verhindern und somit die Eingabe erschweren? Die beste Javascript-Eingabehilfe ist ein Kalenderchen mit Datumsauswahl.

      Da hast du natürlich recht.., also das mit dem Kopieren wäre noch ein Argument. Kalender gibts natürlich schon...

      Gruß!