Stefan Welscher: Volltextsuche auf Website schließt Text in Formularfeldern aus

Moinsen,
folgendes Problem lässt mich gerade rätseln...

Ich möchte dem Benutzer eine bestimmte Ausgabe anzeigen.
Da ich im Vorfeld nicht weiß, wie lang diese (einzeilige) Ausgabe ist nutze ich Formular-Textfelder (<input type="text" value="..." length="42">).
Damit habe ich eine feste Länge auf die ich auch das Layout abstimmen kann. Gleichzeitig hat der Benutzer aber noch die Möglichkeit den gesamten Inhalt zu sehen und zu kopieren.
Das funktioniert soweit und sieht auch optisch OK aus.

Jetzt das Aber:
Wenn es mehrere Ausgabeblöcke gibt, wird der Benutzer durch reines Scrollen vermutlich recht lange benötigen um einen konkreten Datensatz zu finden, weswegen er zur Suchfunktion (STRG-F) greifen wird. Im Firefox und Chrome kein Problem, aber wir haben hier im Intranet den IE als Standardbrowser (größtenteils IE8, ein paar IE6 - Vorweg: das liegt außerhalb meines Einflussbereiches) und dieser scheint den Inhalt aus Formular-Textfeldern nicht in die Suche einzubeziehen, so dass diese immer erfolglos bleibt.

Darum die Frage:
Kann ich über HTML den IE so beeinflussen, dass er die Textfelder mit durchsucht, oder gibt es eine Einstellung mit der ich den Browser (evtl. auch über die Registry) entsprechend modifizieren kann, dass er das macht?

Eine eigene Suche über JavaScript zu schreiben erscheint mir sehr aufwendig, vorgefertigte Bibliotheken möchte ich nicht einbinden.

Habt ihr eine Idee?

Besten Dank!

  1. @@Stefan Welscher:

    nuqneH

    Ich möchte dem Benutzer eine bestimmte Ausgabe anzeigen.
    Da ich im Vorfeld nicht weiß, wie lang diese (einzeilige) Ausgabe ist nutze ich Formular-Textfelder (<input type="text" value="..." length="42">).

    Du missbrauchst das input-Element. Wie dessen Bezeichnung sagt, ist es für *Ein*gaben, nicht für Ausgaben. Für letztere mag das output-Element (feature at risk) passend sein, vielleicht bei dir auch p oder div.

    Du kannst das semantisch richtige Element wie gewünscht stylen. Dann klappt’s auch mit der Suche.

    Qapla'

    PS: IE 6 hab ich nicht. Lebe im 21. Jahrhundert.

    --
    „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
    1. @@Stefan Welscher:
      Du missbrauchst das input-Element. Wie dessen Bezeichnung sagt, ist es für *Ein*gaben, nicht für Ausgaben. Für letztere mag das output-Element (feature at risk) passend sein, vielleicht bei dir auch p oder div.

      Die Idee find ich nicht schlecht, allerdings gibt es das Output-Element wohl erst ab IE10 (kann ich nicht mal testen).

      Du kannst das semantisch richtige Element wie gewünscht stylen. Dann klappt’s auch mit der Suche.

      Sobald ich den horizontalen Scrollbalken aus dem Beispiel deaktiviere kann ich leider nicht mehr den gesamten Text lesen/kopieren. Bei aktiviertem Scrollbalken überdeckt dieser aber den Text. OK, ich kann das Element in der Höhe vergrößern, was dann aber ziemlich doof aussieht... Notfalllösung, aber leider kein gleichwertiger Ersatz.

      Schon mal Danke, soweit, aber gibt es evtl. noch andere Ansätze?

      1. Om nah hoo pez nyeetz, Stefan Welscher!

        Schon mal Danke, soweit, aber gibt es evtl. noch andere Ansätze?

        Für den IE kann man die <http://de.selfhtml.org/css/eigenschaften/anzeigefenster.htm#scrollbar@title=Scrollbalken transparent> machen. Das nützt dir aber für den IE6 auch nichts, weil der keine Transparenz kennt. Die werden also mit dem Scrollbalken leben müssen.

        Matthias

        --
        Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Klo und Kloster.

      2. @@Stefan Welscher:

        nuqneH

        allerdings gibt es das Output-Element wohl erst ab IE10

        Damit alte IEs Styles auch auf Elemente anzwenden, die es „nicht gibt“, dazu ist die Zeile JavaScript in meinem Beispiel (speziell für 'output') da.

        Sobald ich den horizontalen Scrollbalken aus dem Beispiel deaktiviere

        Warum solltest du das tun wollen? Ist es denn etwa nicht sinnvoll, dem Nutzer anzuzeigen, dass gescrollt werden kann?

        Bei aktiviertem Scrollbalken überdeckt dieser aber den Text.

        ?? In meinem Beispiel? Oder was hast du getan, dass dies bei dir so ist?

        Notfalllösung, aber leider kein gleichwertiger Ersatz.

        Andersrum. Der Missbrauch von input ist eine Notfalllösung. Keine gute.

        Qapla'

        --
        „Talente finden Lösungen, Genies entdecken Probleme.“ (Hans Krailsheimer)
        1. Om nah hoo pez nyeetz, Gunnar Bittersmann!

          Bei aktiviertem Scrollbalken überdeckt dieser aber den Text.

          ?? In meinem Beispiel? Oder was hast du getan, dass dies bei dir so ist?

          Wahrscheinlich meint der OP den Text außerhalb des Elements, die Beschreibung lässt vermuten, dass das Element absolut positioniert wurde.

          Matthias

          --
          Der Unterschied zwischen Java und JavaScript ist größer als der zwischen Kart und Kartoffelsalat.

        2. @@Stefan Welscher:

          Sobald ich den horizontalen Scrollbalken aus dem Beispiel deaktiviere

          Warum solltest du das tun wollen? Ist es denn etwa nicht sinnvoll, dem Nutzer anzuzeigen, dass gescrollt werden kann?

          Eigentlich nicht nötig, da es nur einen kleinen Prozentsatz an Ausgaben betrifft, die über das Layout hinaus laufen würden. Reinklicken, STRG-A, STRG-C, bzw. Mit der Maus markieren und nach hinten rücken würde schon ausreichen.

          Bei aktiviertem Scrollbalken überdeckt dieser aber den Text.

          ?? In meinem Beispiel? Oder was hast du getan, dass dies bei dir so ist?

          In dem Beispiel, wenn ich die font-size auf 12px setze.
          Ein Ausgabeblock ist aktuell ohnehin schon zu hoch, da würde ich lieber den Platz für die Scrollbar einsparen, deswegen Notfalllösung. Der Platz für die Scrollbar ist ja in 90% aller Ausgaben für die Katz. Gut, wenn ich ausprobiere, wie viel Zeichen in das Feld maximal passen kann ich das Layout auch von PHP heraus nur dann mit Scrollbalken schreiben, wenn das Zeichenlimit überschritten wird, aber damit hab ich eben auch gleich wieder uneinheitliche Darstellungen.
          Wenn man die Scrollbar irgendwie auf 2px oder so minimieren könnte wäre das evtl. auch noch denkbar.