Ruční vykreslení pole formuláře a přidání class

vit.peprnicek
Člen | 19
+
0
-

Zdar,
v jednom formuláři používám ruční vykreslení formuláře (přez {input ...}) a dost mě chybý jedna věc a to přidání css class k už zadané v css class při vytváření.

Ve formFactory nastavím nějakou css class.

$form->addText('code', 'Kód')->setAttribute('class', $cssClass);

Při vykreslení chci přidat další css třídu

{input code class => "form-control"}

ale toto přepíše tu původní css class. Takže teď mám v šabloně takovou šílenost

{input code class => (isset($form['code']->control->attrs['class']) ? $form['code']->control->attrs['class'] : '')." form-control"}

Je možnost jak toto napsat ňejak jednoduššeji, něco jako:

{input code addClass => "form-control"}
uestla
Backer | 796
+
+2
-

Vypadá to, že chceš použít bootstrap – možná by se ti hodilo https://github.com/…endering.php, případně rovnou renderer, např. https://github.com/…Renderer.php.


Jinak bych se obecně snažil nastavovat všechny class až v šabloně.

Kdyby to z nějakého důvodu nešlo, použil bych

<input n:name="code" n:class="$form['code']->control->class, form-control">

Editoval uestla (24. 4. 2018 10:03)