Forms: Select multiple s daty s využitím Utils\HTML

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Landsman
Člen | 152
+
0
-

Ahoj,

řeším jak vytvořit multiselect, kde si nadefinuji pro některé optiony selected, disabled.

 foreach ($tree as $page) {
                $option_title    = "option title";
                $option_setup = array(
                    'value'    => 72,
                    'disabled' => false,
                    'selected' => false,
                );

                $select_options[] = Nette\Utils\Html::el('option', $option_setup)->setText($option_title);
}

Generování pak:

$form->addMultiSelect('categories', "nejaky label")
     ->setItems($select_options, FALSE)
     ->setAttribute('class', 'select2 multi_select');

Kde nastává tento problém:

<option value='<option value="72">option title</option>'>option title</option>

Jak správně zapsat metodu el?

Editoval Landsman (16. 12. 2015 16:07)

David Matějka
Moderator | 6445
+
+1
-

tim, ze mas setItems(..., FALSE), tak se ty hodnoty pouzijou jako klice, zkus

$select_options[72] = Html::el(..)..;

a pak nastavit bez toho false

Landsman
Člen | 152
+
0
-

David Matějka napsal(a):

tim, ze mas setItems(..., FALSE), tak se ty hodnoty pouzijou jako klice, zkus

$select_options[72] = Html::el(..)..;

a pak nastavit bez toho false

Děkuji ti, to bylo ono! :)