kostenloser Webspace werbefrei: lima-city


Pulldown-Menü, Zeichenanzahl begrenzen

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    ekiam

    Kostenloser Webspace von ekiam

    ekiam hat kostenlosen Webspace.

    Hallo Zusammen,

    Meine Suche beim großen "g.." hat nicht gebracht!
    Deshalb hier die Frage:

    Kann ich in ein Pulldownfeld in einer HTML-Seite auf eine gewisse Anzahl von Zeichen begrenzen?
    Und wie geht das?

    Vielen Dank im voraus für Eure Antworten

    Gruß
    Ekiam
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. m******e

    ekiam schrieb:
    Kann ich in ein Pulldownfeld in einer HTML-Seite auf eine gewisse Anzahl von Zeichen begrenzen?
    Zeichen oder Zeilen?
    Bei HTML legst Du die Anzahl der Zeichen doch selbst fest?

    Sollten die angezeigten Zeilen gemeint sein, gehts so:
    <select name="top5" size="3">
      <option>Heino</option>
      <option>Michael Jackson</option>
      <option>Tom Waits</option>
      <option>Nina Hagen</option>
      <option>Marianne Rosenberg</option>
    </select>
    http://de.selfhtml.org/navigation/suche/index.htm

    Von den 5 zur Auswahl stehenden Namen werden mit
    size="3"
    nur 3 angezeigt, der Rest lässt sich scrollen.

    Vielen Dank im voraus für Eure Antworten
    *hate* ;)
  4. Autor dieses Themas

    ekiam

    Kostenloser Webspace von ekiam

    ekiam hat kostenlosen Webspace.

    Hallo menschle,

    Danke für die schnelle Antwort.

    Die war allerdings nicht gemeint.

    Meine Frage bezog sich auf anzahl Zeichen.

    BSP.: NINA HAGEN Herauskommen soll: NINA H

    Vielen Dank im voraus
    Ekiam
  5. Mit HTML selber wirst du da nicht weit kommen.

    Wenn du kein PHP nutzt um die Daten zu erstellen wäre das Sinnvollste wohl über Javascript & Regexdie Daten im Nachhinein zu verändern.

    Wenn du uns mehr Details darüber gibst, welche Werte genutzt werden und wie deine Seite aufgebaut ist können wir dir besser helfen.

    Beitrag zuletzt geändert: 18.12.2013 8:29:27 von tchab
  6. Autor dieses Themas

    ekiam

    Kostenloser Webspace von ekiam

    ekiam hat kostenlosen Webspace.

    Hallo tchab,

    Ich lese über eine do-while-Schleife (php) verschiedene Produkte ein! Eine ellenlange Liste. Die Produkte haben eine unterschiedliche Größe (Zeichenanzahl mit leerzeichen) in SELECT

    Beispiel: Schrauben-6-kant, Schrauben mit Kreuzschlitz, Unterlegscheiben, Mutter 8mm, etc.

    Da dies noch recht kurze Produkte sind und ich viel längere Bezeichnungen habe, möchte ich die Zeichen auf eine bestimmte länge begrenzen. Soll heißen:
    aus SCHRAUBEN MIT KREUZSCHLITZ soll SCHRAUBEN MIT KREUZ werden.
    Geht so etwas und wie?

    GRuß
    Ekiam
  7. Hallo

    Wenn Dir die DropDown Box zu Breit für Dein Layout / Design ist,
    dann kannst Du die Breite der select Box per CSS width festlegen

    <select name="top" style="width:140px;">
      <option>Michael Jackson</option>
      <option>Nina Hagen</option>
      <option>Marianne Rosenberg</option>
    </select>


    Die DropDown Box ist dann genau so breit wie mit CSS festgelegt (hier 140 Pixel)
    und bei Auswahl sieht man dann trotzdem den längeren Text der <option> Elemente


    Oder du baust die select Box <option> Elemente (per PHP) so zusammen,
    dass der Text ein anderer (kürzer) ist als der Wert (value), der übergeben wird.

    <select name="top">
      <option value="Michael Jackson">M.Jackson</option>
      <option value="Nina Hagen">N.Hagen</option>
      <option value="Marianne Rosenberg">M.Rosenberg</option>
    </select>



    Bsp mit PHP und Array (key => value)
    $top_data = array(
      'M.Jackson'   => 'Michael Jackson', 
      'N.Hagen'     => 'Nina Hagen', 
      'M.Rosenberg' => 'Marianne Rosenberg', 
    ); 
    
    print "<select name=\"top\">\n"; 
    
    foreach($top_data as $key=>$val) { 
      print "  <option value=\"$val\">$key</option>\n"; 
    }
    
    print "</select>\n";


    Anstatt den Key schon im Array vorhanden, kann man auch
    Array nur mit Werte haben und (mit PHP) kürzen, z.B. mit substr()
    aber dann bekommt man oft nur Teil des Vornamen (zu kurz)

    hier BSP ... nur die ersten 8 Zeichen im Text
    $top_data = array(
      'Michael Jackson', 
      'Nina Hagen', 
      'Marianne Rosenberg', 
    ); 
    
    $max_length = 8; // --- maximale Zeichen 
    
    print "<select name=\"top\">\n"; 
    
    foreach($top_data as $val) { 
      if ($short_length < strlen($val) { 
        $short = substr($val, 0, $max_length);
      } 
    
      print "  <option value=\"$val\">$short</option>\n"; 
    }
    
    print "</select>\n";


    EDIT: ich denke das mit $max_length könnte für Dich das richtige sein,
    aber mach es nicht zu kurz, damit noch klar ist, was überhaupt gemeint ist


    um vom Wort vor Leerzeichen nur den ersten Buschtabe übrig zu lassen,
    könnte mit explode und dann substr von erstem Element davon machen,

    $top_data = array(
      'Michael Jackson', 
      'Nina Hagen', 
      'Marianne Rosenberg', 
    ); 
    
    print "<select name=\"top\">\n"; 
    
    foreach($top_data as $val) { 
      $namedata = explode(' ',$val); 
    
      $vor_name = substr($namedata[0], 0, 1); 
      $nachname = $namedata[1]; 
      $txtshort = $vor_name.'.' '.$nachname; 
      print "  <option value=\"$val\">$txtshort</option>\n"; 
    }
    
    print "</select>\n";

    ist nur ne Idee ... ungetestet ....
    es gibt bestimmt auch noch andere Möglichkeiten, z.B. preg_replace mit Pattern




    Beitrag zuletzt geändert: 18.12.2013 9:28:50 von webnfo
  8. Autor dieses Themas

    ekiam

    Kostenloser Webspace von ekiam

    ekiam hat kostenlosen Webspace.

    Hallo webnfo,

    genau soetwas habe ich gesucht.
    Vielen Dank für die schnelle Hilfe
    Gruß
    Ekiam
  9. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!