Links in Select-Felder

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von cym, 17.09.2005.

  1. cym

    cym Thread Starter MacUser Mitglied

    Beiträge:
    1.349
    Zustimmungen:
    9
    MacUser seit:
    03.05.2004
    Guten Abend

    Ich möchte ein Select-Feld mit Links darin einbauen. Leider fand ich nur eine Lösung mit JavaScript. Aber das geht doch sicher auch mit PHP? Damit ich eine möglichst barierenfreie Webseite habe.

    Gruss,
    cym :)
     
  2. msslovi0

    msslovi0 MacUser Mitglied

    Beiträge:
    2.713
    Zustimmungen:
    115
    MacUser seit:
    20.03.2005
    Nein, <select> und <option>-Tag sehen das nicht vor. Wenn du Links zu einer Auswahloption mit anbieten willst, solltest du dir überlegen, ob Radio-Buttons oder Checkboxen (je nach Art des select-Feldes) nicht sinnvoller sind.

    php ist BTW eine serverseitige Scriptsprache und kann im Gegensatz zum clientseitigen Javascript nur auf Aktionen des Users reagieren, wenn die Seite wieder an den Server geschickt wird. Du vergleichst hier also Äpfel mit Birnen.

    Matt
     
  3. cym

    cym Thread Starter MacUser Mitglied

    Beiträge:
    1.349
    Zustimmungen:
    9
    MacUser seit:
    03.05.2004
    Danke für deine Antwort! Ok, dann nehme ich an, dass dies nur so funktioniert:
    HTML:
    <select>
      <option value="-">zur Seite springen</option>
      <option value="start.htm">Startseite</option>
      <option value="news.htm">News</option>
      <option value="angebot.htm">Angebote</option>
      <option value="referenz.htm">Referenzen</option>
      <option value="kontakt.htm">Kontakt</option>
    </select>
    Im Head dann:
    HTML:
    <select onChange="
    if(this.selectedIndex != 0)
    {location.href = this.options[this.selectedIndex].value}
     ">
     
  4. dms

    dms

    Sollte das die einzige Navigationsmöglichkeit auf der Seite sein, dann packe bitte noch einen Submit-Button dazu.

    <noscript><input type="submit" /></noscript>
     
  5. msslovi0

    msslovi0 MacUser Mitglied

    Beiträge:
    2.713
    Zustimmungen:
    115
    MacUser seit:
    20.03.2005
    Nein, nicht in den head. Der onchange-Event (für XHTML-Konformität bitte alles klein schreiben!) muss in dem select stehen, bei dem bei Auswahl die entsprechende Aktion ausgeführt werden soll.

    Matt
     
  6. cym

    cym Thread Starter MacUser Mitglied

    Beiträge:
    1.349
    Zustimmungen:
    9
    MacUser seit:
    03.05.2004
    Ach so. Danke! :)
     
  7. Jakob

    Jakob MacUser Mitglied

    Beiträge:
    1.066
    Zustimmungen:
    21
    MacUser seit:
    05.01.2004
    Ich würde's nicht nur über JavaScript laufen lassen. Geb dem Select-Ding nen Namen, bette es in ein <form> ein und tu nen submit-Button drunter. Das Formular schickst Du an die Datei selbst (oder eine speziell dafür hergerichtete Zwischendatei), die dann mittels header-Weiterleitung zur jeweiligen Seite weiterleitet.

    Ist nicht die beste, aber afaik die einzigste Methode, es auch für nicht JSler benutzbar zu machen.

    Übrigens, wenn Du schon eine Barrierefreiheit ansprichst, ist so ne Select-Liste womöglich der falsche Ansatz. Geht es nicht mit einer CSS-gestylten <ul>? Das mit den Select-Teilen wird bald anstrengend, ständig das Ding wieder aufzuklappen und nen neuen Eintrag auszuwählen.
     
Die Seite wird geladen...

Diese Seite empfehlen