Přidání HTML (HTML::el) do formuláře
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- omachala
- Člen | 20
Zdravím, mám poměrně velký formulář (=za každou cenu se chci vyhnout manuálnímu vykreslování) a někde doprostřed formuláře potřebuji dát tabulku, jejíž vykreslení by mělo vypadat nějak takto:
<?php
$table = Html::el('table');
$tr = $table->create('tr');
foreach($this->database->table('file')->where('ad_id',$this->id) as $item){
$tr->create('td',$item->name);
}
?>
a moje představa je, celé to připojit do formuláře:
<?php
$form->nejakaFunkceProPridaniHtml($table);
?>
Jestli je to hloupá otázka, tak se omlouvám, jsem začátečník a za 2 hodiny se mi nepodařilo najít žádné rozumné řešení :-(
- omachala
- Člen | 20
Nakonec jsem to vyřešil poměrně jednoduše a výsledek dostačuje. HTML jsem připojil jako description pro group:
<?php
$table = Html::el('table');
$tr = $table->create('tr');
foreach($this->database->table('file')->where('ad_id',$this->id) as $item){
$tr->create('td',$item->name);
}
$form->addGroup('Moje skupina')
->setOption('description',$table);
?>
které vygeneruje:
<fieldset>
<legend>Moje skupina</legend>
<table><tbody><tr><td>nejaky_soubor.html</td></tr></tbody></table>
<table>
... nette form tabulka ...
</table>
</fieldset>