Jump to main content Jump to doc navigation

MODx.FormPanel

Расширяет: Ext.FormPanel

xtype: modx-formpanel

Основные характеристики: Функция перетаскивания; функция проверки полей на изменения ("dirty"); функциональность коннектора.

Панели FormPanels можно найти в менеджере MODX. Они могут содержать поля формы, сетки, деревья - практически любой доступный компонент.

Они автоматически передают заголовок modAuth и заголовок Powered-By во все отправки форм, которые используются для предотвращения атак XRSF.

Они также автоматически интегрируются в структуру коннекторов MODX. Все, что вам нужно сделать, это передать параметр url в конфигурацию объекта и параметр baseParams для отправки с отправкой формы, а FormPanel обработает все остальное. С процессорами на основе классов MODX версии 2.2+ и $this->addFieldError() MODx.FormPanel также будет правильно обрабатывать зарегистрированные ошибки.

Уникальные параметры

MODx.FormPanel добавляет несколько уникальных параметров, которых нет в типичных объектах Ext.FormPanel:

Название Описание Значение по умолчанию
saveMsg Сообщение, отображаемое в диалоговом окне модального ожидания при сохранении. Saving...
allowDrop Разрешить бросать предметы из дерева в этой форме. true
useLoadingMask Установите значение true, чтобы использовать маску загрузки при загрузке значений формы. false
onDirtyForm Идентификатор формы для проверки измененного состояния формы. По умолчанию используется форма. this.getForm()

Пользовательские события

MODx.FormPanel добавляет несколько дополнительных событий, которых нет в объектах Ext.FormPanel:

Название Описание
beforeSubmit Вызывается перед отправкой формы с 3 параметрами: - форма - объект Ext.form.BasicForm, прикрепленный к этой FormPanel
options Любые параметры, переданные вызову submit()
config Объект конфигурации FormPanel
failure Вызывается при ошибке формы или реакции на ошибку процессора с 4 параметрами: - результат - объект ответа, отправленный из процессора
form Объект Ext.form.BasicForm, прикрепленный к этому FormPanel
options Любые параметры, переданные вызову submit()
config Объект конфигурации FormPanel
fieldChange Запускается при изменении поля со следующими параметрами: - field - объект Ext.Field, который изменяется
nv Новое значение поля
ov Старое значение поля
form BasicForm, прикрепленный к этой панели формы
postReady Запускается после запуска обработчиков события «ready» (которые должны запускаться расширением классов)
ready Не запускается; должен запускаться расширенными объектами MODx.FormPanel, чтобы разрешить запуск событий fieldChange/postReady.
setup Срабатывает в начале загрузки FormPanel и после успешной отправки.
success Запускается при успешной отправки формы с ответом об успешной обработке от процессора с 4 параметрами: - результат - объект ответа, отправленный из процессора
form Объект Ext.form.BasicForm
options Любые параметры, переданные вызову submit()
config Объект конфигурации FormPanel

Другие уникальные функции

Поля области перетаскивания

Все поля в экземплярах MODx.FormPanel автоматически могут содержать элементы, такие как узлы древа ресурсов слева. Вы можете отключить эту функцию с помощью параметра allowDrop.

Автоматическая обработка измененных полей

Все поля будут вызывать событие fieldChange при их изменении. Вы также можете использовать следующие методы:

  • isDirty - проверить общий статус измененного состояния
  • clearDirty - очистить измененный статус для всех форм
  • markDirty - пометить форму как измененную и запустить событие fieldChange

Манипуляция с полями

Вы можете легко манипулировать полями и метками в объектах MODx.FormPanel:

  • getField(name) - получает объект Ext.Field для указанного имени поля
  • hideField(name) - скрывает поле с переданным именем
  • showField(name) - показывает поле с переданным именем, если оно скрыто
  • setLabel(name, text) - установить метку поля для указанного текста.

Смотрите также

  1. Объект MODExt MODx
  2. Учебник по MODExt
    1. Ext JS - Окна сообщений
    2. Ext JS - Ajax
    3. Ext JS - Анимация
    4. Ext JS - Управление узлами
    5. Ext JS - Панели
    6. Ext JS - Расширенная сетка
    7. Ext JS - Внутри CMP
  3. MODx.combo.ComboBox
  4. MODx.Console
  5. MODx.FormPanel
  6. MODx.grid.Grid
  7. MODx.grid.LocalGrid
  8. MODx.msg
  9. MODx.tree.Tree
  10. MODx.Window

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • Jens Wittmann – Gestaltung & Entwicklung
  • Digital Penguin
  • eydolan
  • deJaya
  • Sepia River Studios
  • Following Sea
  • Fabian Christen
  • Dannevang Digital
  • Anton Tarasov
  • Lefthandmedia
  • Murray Wood
  • Nick Clark
  • YJ
  • Chris Fickling
  • CrewMark
  • Richard

Budget

$269 per month—let's make that $500!

Learn more