FormIt
Что такое FormIt
FormIt это динамически обрабатываемый сниппет для MODX Revolution. Он обрабатывает форму после представления, выполняет проверку и последующие действия, такие как отправка письма на email. Он не генерирует форму, но может перезаполнить её в случае некоректно введённых данных.
История изменений
Shaun McCormick написал FormIt как форму дополнительной обработки и впервые опубликовал дополнение 19 октября 2009г.
Загрузка
Вы можете скачать дополнение через менеджер пакетов Modx (Система->управление пакетами->загрузить дополнения) или скачать из
Разработка и отчёт об ошибках
FormIt разрабатывается и хранится на GitHub и доступен по
Как использовать
Просто поместите вызов снипета FormIt в ресурс, содержащий вашу форму. В отличие от аналогичных предшественников (в первую очередь eForm в MODx Evolution) вы можете не помещать форму в чанк, а сослаться на чанк при вызове снипета. Укажите "хуки" (или сценарии пост-обработки) в вызове снипета. Затем добавте проверку с помощью &validate и &customValidators параметров в снипете.
Если у вас несколько форм на странице, установите свойство &submitVar в вызове вашего сниппета, в соответствии с именем элемента в форме (то есть, например, &submitVar=`form1-submit`). Это укажет FormIt обрабатывать указанный POST запрос.
Доступные свойства
Доступны следующие общие свойства для вызова FormIt (не включая хук-специфические свойства):
| Название | Описание | Значение по умолчинию |
|---|---|---|
| hooks | Набор скриптов для проверки. Это может быть разделённый запятыми список хуков, и если первый не срабатывает, выполнение не прервётся. Хук может быть фрагментом имени снипета в котором он выполняется. | |
| preHooks | Если все скрипты проходят проверку, то форма загружается. Это может быть разделённый запятыми список хуков, и если первый не срабатывает, выполнение не прервётся. Хук может быть фрагментом имени снипета в котором он выполняется. | |
| submitVar | Если установленно, не начнёт обаботку формы если POST переменная не передалась. Примечание: необходимо если вы используете &store свойство (+ set submit var in input="submit"!). | |
| validate | Разделённый запятыми список полей для валидации, с именем каждого поля типа имя:валидатор (например: username:required,email:required). Валидаторы также могут быть объединены, подобно email:email:required. Это свойство может быть указанно в нескольких строках. | |
| validationErrorMessage | Сообщениеоб ошибке общего характера для случая, когда не прошла валидация. Может содержать [[+erors]] если вы хотите вверху отобразить список всех ошибок. |
A form validation error occurred. Please check the values you have entered.(Произошла ошибка проверки формы, проверте введёные значения). |
| validationErrorBulkTpl | HTML tpl используется для каждой ошибки в общем выводе сообщения об ошибках. | |
| errTpl | Обертка HTML сообщений об ошибках. Примечание: не чанк, просто HTML. | |
| customValidators | Разделённый запятыми произвольный список проверок(снипетов) который вы планируете использовать в этой форме. Они должны быть четко сформулированы здесь, иначе они не будут работать. | |
| clearFieldsOnSuccess | Если истина, будут очищены поля при успешной отправке данных из формы. Без переадресации. | 1 |
| store | Если истина, данные в кэше будут храниться и использоваться при помощи снипета FormItRetriever . | 0 |
| storeTime | Если хранилище активированно (значени store 1),здесь определяется количество секунд для хранения данных из формы. По умолчанию 5 минут. | 300 |
| placeholderPrefix | Префикс, используемый для всех плейсхолдеров установленных FormIt для полей. | fi. |
| successMessage | Если не используется перенаправляющий хук, отображает сообщение об успешной отправке данных. | |
| successMessagePlaceholder | название плейсхолдера для вывода сообщения об успешной отправке. | fi.successMessage |
| redirectTo | id страницы "спасибо за обращение", куда посетитель будет переведён после успешной отправки формы, но это параметр только для чтения если вы включили "redirect" в список хуков. |
Проверка
Проверка в FormIt осуществляется через &validate свойство, и может быть использована для автоматической проверки любого из полей в форме.
Для более подробной информации о проверке в FormIt, посетите .
Хуки
Хуки в основном сценарии, которые выполняются во время обработки FormIt. Они могут быть соеденены последовательно. Т.е. следующий хук будет выполнятся только в случае успеха предыдущего.
Для получения более подробной информации о хуках посетите: .
Дополнительно
| Назад | Вперёд |
