Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

In Dropdown suchen

Empfohlene Antworten

Veröffentlicht

Hallo,

ich habe ein Textfeld und ein Auswahlfeld. Wenn ich nun in dem Textfeld etwas eingebe, dann soll pro Zeichen, dass ich eingebe, verglichen werden ob der Ausdruck in dem Auswahlfeld enthalten ist.

Dafür habe ich schonmal ein Javascript gefunden.



function SelectAbteilung(Wert)

    {

      for(i = 0; i < document.getElementById('AbteilungListe').options.length; i++)

      {

        if(Wert.substr(0, Wert.length).toLowerCase() == document.getElementById('AbteilungListe').options[i].value.substr(0, Wert.length).toLowerCase() && Wert.length != 0)

        {

          document.getElementById('AbteilungListe').options[i].selected = true;

          break;

        }

      }

    } 



Ich habe damit nur ein Problem, wenn ein Leerzeichen in einem Ausdruck vorkommt.

Also als Inhalt für das Auswahlfeld z.B.:

Test

Test 1

Test 2

Test 3

Wenn ich in dem Textfeld test eingebe, bleibt er noch richtigerweise bei "Test" stehen, aber wenn ich nun "test 1" eingebe, tut sich nichts mehr.

Hat vieleicht jemand eine Idee, wie man das lösen könnte?

PS: Meine Javascript- Kenntnisse sind sehr beschränkt.

Also an der JavaScript-Funktion dürfte es nicht liegen, die sieht soweit korrekt aus und funktioniert bei mir auch, wenn Leerzeichen im Textfeld eingegeben werden. Poste doch mal noch den Quelltext für das DropDown-Feld und das Textfeld, vielleicht ist dir da irgendwo ein Fehler unterlaufen.

tine

Der Fehler war tatsächtlich im Auswahlfeld. Es fehlten die " um den Value vom option- Element.

Das kommt davon, wenn man html mit SQL verbindet ,-(



strSQl = "SELECT '<option value="&CHR(34)&"' + varBezeichnung + '"&CHR(34)&"' + CASE varBezeichnung " & _

    "WHEN '" & request.form("anzAbteilung") & "' THEN " & _

         "' selected' " & _

    "ELSE '' " & _

     "END + '>' + varBezeichnung + '</option>' " & _

    "FROM tbl_Abteilung " & _

"ORDER BY varBezeichnung;"


Aber dank Dir ,-) Aber mal ne andere Frage. Weiß jemand wie ich nicht auf den Text im Value sondern im, auf der Seite sichtbaren Text, suche? Als bei Beispiel:


<select size="1" name="anzAbteilung" id="AbteilungListe">

  <option value="1">Test 1</option>

  <option value="2">Test 2</option>

</select>


Nun möchte ich bei einer Eingabe von "Test 1" trotzdem den ersten Eintrag ausgewählt haben und nach dem Abschicken von dem Formular in asp mit dem Key weiterarbeiten können.

Ändere in deiner JavaScript-Funktion mal diesen Teil

document.getElementById('AbteilungListe').options[i].value.substr(0, Wert.length).toLowerCase()
in
document.getElementById('AbteilungListe').options[i].text.substr(0, Wert.length).toLowerCase()

Dann sollte der Text und nicht das, was in Value steht, verglichen werden.

tine

Danke!

Das war ja richtig einfach ,-)

Bis darauf, dass ich mal wieder im SQL den Key in nen charakter umwandeln musste, damit ich das Recordset als String auslesen kann :rolleyes:

Zwischendurch habe ich das Gefühl, das die Entwickler solcher Sprachen ab und zu doch schon recht schräk gedacht haben müssen und so eine Kombination mehrer Sprachen mehr schlecht als recht ist :uli

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.