Позволяет преобразовывать различные источники данных (итераторы или обычные массивы) в форму, понятную компонентам тега <select> для формирования списка тегов <option>.
Этот тег используется в случаях:
<select:options_source> является WactRuntimeDatasourceComponentTag и создает активный компонент класса WactSelectOptionsSourceComponent.
С точки зрения внешнего поведения активный компонент тега ведет себя как обычный контейнер данных и как списковый контейнер данных. Это дает возможность использовать различные пути передачи данных в этот тег для преобразования:
см. также раздел "Использование select тегов", где есть примеры использования этого тега, а также объяснен принцип работы с <select> тегами в WACT-шаблонах.
<select:options_source target='target1[,target2,...]' [from="data_binding_expression"] [use_as_name='name_field'] [use_as_id='id_field'] [default_value='default_option_id'] [default_name='Default option title']>
Нет.
Обратите внимание, что компонент поддерживает и registerDataset, и registerDatasource, при этом данные обрабатываются различными способами.
Рабочий пример можно найти в папке limb/wact/examples/form/select/
Шаблон form.html:
<form id='coach_form' name='coach_form' method='post' runat='server'> <select:OPTIONS_SOURCE id="team_select_source" target="team_id" use_as_name="title" use_as_id="id" default_id='-1' default_name='Select a team' /> <label for="team_id">Team</label>:<select id='team_id' name='team_id'></select> </form>
php-скрипт:
$template = new WactTemplate('form.html'); $options = $template->getChild('team_select_source'); $teams = array(array('id' => '1', 'title' => 'Spartak'), array('id' => '2', 'title' => 'Dinamo'), array('id' => '3', 'title' => 'Zenit')); $options->registerDataset($teams); $template->display();
см. также примеры в разделе "Использование select тегов".
Обсуждение