Инструменты пользователя

Инструменты сайта


limb3:ru:packages:wact:tags:form_tags:form_tag

<form>

Описание

По-умолчанию WACT трактует <form> и <input> теги, как обычные HTML-теги, не делая никаких дополнительных преобразований. Однако, если вам необходимо работать с активной формой, то есть проверять поля формы, выводить ошибки валидации, сохранять значения в полях после отправки формы и повторной ее отображении - WACT содержит широкий набор средств, превращающий эти теги <form>, <input> и т.д. в полноценные активный компоненты. При этом никаких изменений в верстке не требуется.

Итак, для того, чтобы включить компиляцию тега <form>, как WACT-тега, это нужно указать явно runat='server':

<form runat='server' name='my_form'>
...form fields...
</form>

см. раздел "Теги форм с активными компонентами или без", который подробно объясняет этот момент.

<form> тег является WactRuntimeComponentDatasourceTag и создает компонент времени выполнения WactFormComponent, который является контекстом. Основное назначение активного компонента - это хранить контейнер данных со значениями полей формы и список ошибок валидации формы.

см. раздел "Контейнеры данных WACT", который разъясняет смысл фразы, что компонент формы - это контекст.

Синтаксис

<form id='id' name='name' runat='server' [method='get|post'] [action='action']>
  ...some form controls...
</form>

Область применения

В любом месте WACT шаблона.

Атрибуты

  • id – идентификатор формы.
  • name – название формы.

Плюс любые атрибуты html-тега <form>.

Теоретически может использоваться также атрибут from, который позволит заполнить форму данными из внешней переменной. Но учтите, что заполнение формы будет тогда происходить каждый раз заново, даже если форма уже содержала данные - они будет затерты.

Содержимое

Любое.

WactFormComponent

  • registerDataSource - позволяет установить контейнер данных со значениями полей.
  • setErrors($ErrorList) - позволяет установить объект со списком ошибок валидации.
  • hasErrors - возвращает true, если форма не прошла валидацию.
  • preserveState($variable) - позволяет передать значение указанной переменной, связое из контейнера данных формы, в виде скрытого поля.
  • getErrorsList() - возвращает список ошибок валидации.

Пример использования

Рабочие примеры использования тега <form>, а также других тегов форм можно найти в папке limb/wact/examples/tags/form/.

<form id='search_form' name='search_form' action='/search' method='get' runat='server'>
  <tr>
    <td >
     Search
    </td>
    <td>
     <input type="text" id="query" name="query" class='input' size='40'/>
    </td>
  </tr>
  <tr>
    <td colspan='2'>
     <input type="submit" value='Search' runat='client' />
    </td>
  </tr>
  <input type="hidden" name="action" value='create' runat='client'/>
</form>

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
   _  __   ____   __ __   _  __   ___ 
  / |/ /  / __/  / // /  | |/_/  / _ |
 /    /  / _/   / _  /  _>  <   / __ |
/_/|_/  /_/    /_//_/  /_/|_|  /_/ |_|
 
limb3/ru/packages/wact/tags/form_tags/form_tag.txt · Последние изменения: 2010/11/10 10:02 (внешнее изменение)