• Willkommen im Zend Framework Forum

    ZF1 Zend Framework 1 + ZF2 Zend Framework 2

    Das Zend Framework Forum ist seit 2006 die erste Anlaufstelle für Zend Framework Entwickler in Deutschland. Mit über 70.000 Beiträgen und einer steigenden Nutzerzahl bietet das Forum hilfreiche Themen und ZF-Tutorials für professionelle Entwickler, fortgeschrittene Programmierer sowie Zend Framework Einsteiger.
    Wenn dies Dein erster Besuch in der Zend Framework Community ist, lies bitte zuerst die Hilfe - FAQ durch. Du musst Dich registrieren, bevor Du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um die Registrierung zu starten. Du kannst auch jetzt schon Beiträge lesen. Hier im Forum findest Du die Zend Framework Hilfe, die Du suchst!

    Grüße an alle Zend Framework Entwickler. Das Team vom Zend Framework Forum!

    Drupal Agentur

class in multioption

MirkoK

New member
Hallo Leute,

ich möchte einer option in einer select eine Klasse oder auch eine id zuweisen

gewünschtes Ergebnis:

<option class="myClass "value="1" label="Meier">Meier</option>

$select->addMultiOption('1', 'Meier')

kann mir da jemand helfen?
 

MirkoK

New member
ok, nach dem netten hinweis nochmal:

mein ziel (goal) ich möchte einer option in einer select eine Klasse zuweisen

gewünschtes Ergebnis:

<option class="myClass" value="1" label="Meier">Meier</option>

wie stelle ich das an? bis jetzt habe ich

$select->addMultiOption('1', 'Meier')

kann mir da jemand helfen?
 

KingCrunch

New member
ok, nach dem netten hinweis nochmal:

mein ziel (goal) ich möchte einer option in einer select eine Klasse zuweisen

gewünschtes Ergebnis:

<option class="myClass" value="1" label="Meier">Meier</option>


wie stelle ich das an? bis jetzt habe ich

$select->addMultiOption('1', 'Meier')

kann mir da jemand helfen?
Ähm ... Danke?
Hallo Leute,

ich möchte einer option in einer select eine Klasse oder auch eine id zuweisen

gewünschtes Ergebnis:

<option class="myClass "value="1" label="Meier">Meier</option>

$select->addMultiOption('1', 'Meier')

kann mir da jemand helfen?
Willst du mich veralbern?

Die Lösung:
[alterText]Über die CSS-Selektoren kommst du auch ohne explizite Klassenangabe an die einzelnen Elemente.[/alterText]
[neuerText]Ohne zu wissen, was du vorhast, läufst du vermutlich grad in die falsche Richtung[/neuerText]
 

MirkoK

New member
also erstmal danke an unsere spezialisten, an kaiuwe und den king, die es immer wieder schaffen, mit viel Text null Hilfestellung zu geben... Ihr könnt daher diesen Post getrost überspringen

meine Frage richtet sich daher an alle anderen Forenbesucher:

Hi Leute :)

ich möchte mittels Zend_Form einen Eintrag in einer select-box erzeugen

so:

$select->addMultiOption('1', 'Meier')

das Ergebnis wäre dann dies:

<option value="1" label="Meier">Meier</option>

ich möchte aber dieses Ergebnis:

<option class="myClass" value="1" label="Meier">Meier</option>

kann mir jemand von Euch einen kurzen Tipp geben?

danke
 

Kaiuwe

Super-Moderator
MirkoK schrieb:
also erstmal danke an unsere spezialisten, an kaiuwe und den king, die es immer wieder schaffen, mit viel Text null Hilfestellung zu geben... Ihr könnt daher diesen Post getrost überspringen
Verzeih mir, wenn ich bei dem Zusammenhang zwischen „Forum für PHP-Profis“ und „Lesen von PHP-Quellcode“ etwas durcheinander gebracht oder gar irgendetwas vorausgesetzt habe.
 

Kaiuwe

Super-Moderator
KingCrunch schrieb:
Und ich würd gern wissen, was er konkret vorhat. Wir sterben wohl beide dumm ...
Naja, kann ja nur werden:
  • jede zweite Zeile andersfarbig
  • Wert gleich Hintergrundfarbe (Wert: „rot“ => Farbe => Rot)
  • Icons per Hintergrundbild einfügen
Klar, jetzt wirst du gleich schreiben: „Steht doch schon in der ersten Antwort“, aber wenn ich den Benutzer mit IE6 und ausgeschaltetem JavaScript noch immer bedienen will, bleibt wohl nicht viel übrig. ;)
 

deetee

New member
$select->addMultiOption('1', 'Meier')

das Ergebnis wäre dann dies:

<option value="1" label="Meier">Meier</option>

ich möchte aber dieses Ergebnis:

<option class="myClass" value="1" label="Meier">Meier</option>

kann mir jemand von Euch einen kurzen Tipp geben?

danke
Suchst du vielleicht:
PHP:
$select->setAttrib('class', 'myClass');
 

MirkoK

New member
Hi

>> $select->setAttrib('class', 'myClass');

ne leider nicht... der setzt die Klasse für die Select-Box

ich brauche die Klasse für den einzelnen Eintrag, die option

trotzdem danke
 

deetee

New member
Ok, dafür konnte ich jetzt auch nichts in der API finden. Allerdings wäre es ja trotzdem möglich, wenn du in der CSS Datei dann folgendes machst:

Code:
.myClass OPTION { ... }
Das müsste doch äquivalent zu dem sein, was du wolltest.
 

DennisBecker

Super-Moderator
Oder noch mehr eingeschränkt:
Code:
.myClass > option[label=Meier] { ... }
Das geht dann aber erst frühestens mit dem IE7, aber so lässt sich auch ein entsprechender Eintrag selektieren.
Weitere alternativen:
Code:
.myClass > option[value=1] { ... }
Code:
.myClass > option:first-child { ... }
Ab IE7
Code:
.myClass > option:nth-child(2) { ... }
Siehe dazu auch http://css-tricks.com/how-nth-child-works/
Um es direkt vorweg zu nehmen, :nth-child(n) geht wohl erst ab IE9.
 
Zuletzt bearbeitet:

MirkoK

New member
hi Leute,

danke für die zahlreichen Antworten, aber mir geht es nicht um css... keine Selectoren, keine formatierungen

ich möchte dieses Ergebnis:

<option class="myClass "value="1" label="Meier">Meier</option>

oder sagen wir, damit es abstrakter ist:

<option myAttrib="myAttrib"value="1" label="Meier">Meier</option>

gibt es dafür eine Lösung?
 

powergamer

New member
Hallo,

haben ein ähnliches Problem wie Mirko.
Ich habe eine MultiOptionBox die bereits in meiner Form-Klasse aus der DB befüllt wird.
Diese EInträge haben eine Klasse.

Anschließend möchte ich diese MultiOptionBox erneut befüllen, um sie zu unterscheiden (Abfrage über Jquery) benötige ich für die neuen eine andere Klasse.

Code:
$form->getElement('checkbox_paper')->addMultiOption("-1",$paper->getName(), array("class" => "new_paper_options", "name" => "new_paper_option"));
class und name werden hier ignoriert.
Kann mir bitte jemand weiter helfen?
 
Zuletzt bearbeitet:
Oben