MODx.FormPanel
Последнее обновление Oct 11th, 2026 | История страницы | Улучшить эту страницу | Сообщить о проблеме
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
Budget
$194 per month—let's make that $500!
Learn moreMODx.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 | Перед отправкой формы. Параметры: form (Ext.form.BasicForm), options (параметры submit()), config (конфиг FormPanel) |
| failure | При ошибке формы или неудачном ответе процессора. Параметры: result (ответ процессора), form, options, config |
| fieldChange | При изменении любого поля. Параметры: field (Ext.Field), nv (новое значение), ov (старое), form (BasicForm) |
| postReady | После запуска обработчиков события «ready» (которые должны запускаться расширениями классов) |
| ready | Не запускается; должен запускаться расширениями MODx.FormPanel, чтобы разрешились fieldChange/postReady |
| setup | В начале загрузки FormPanel и после успешной отправки |
| save | После успешной отправки, когда ответ процессора уже обработан |
| actionNew | Когда ответ процессора указывает действие «new» (создать ещё одну запись) |
| actionContinue | Когда ответ процессора просит продолжить редактирование той же записи |
| actionClose | Когда ответ процессора просит закрыть окно после сохранения |
| failureSubmit | Когда проверка формы не прошла и отправка не была выполнена |
| success | При успешном ответе процессора. Параметры: result, form, options, config (как у failure) |
Другие уникальные функции¶
Поля области перетаскивания¶
Все поля в экземплярах MODx.FormPanel автоматически могут содержать элементы, такие как узлы древа ресурсов слева. Вы можете отключить эту функцию с помощью параметра allowDrop.
Автоматическая обработка измененных полей¶
Все поля будут вызывать событие fieldChange при их изменении. Вы также можете использовать следующие методы:
- isDirty - проверить общий статус измененного состояния
- clearDirty - очистить измененный статус для всех форм
- markDirty - пометить форму как измененную и запустить событие fieldChange
Манипуляция с полями¶
Вы можете легко манипулировать полями и метками в объектах MODx.FormPanel:
- getField(name) - получает объект Ext.Field для указанного имени поля
- hideField(name) - скрывает поле с переданным именем
- showField(name) - показывает поле с переданным именем, если оно скрыто. Примечание: текущая реализация принимает только массив имён — передача одиночной строки вызывает TypeError (#17049); оберните:
showField(['name']). (У MODx.Window showField/hideField принимают объекты полей.) - setLabel(name, text) - установить метку поля для указанного текста.
- setMediaSources(name, sources) - привязать источники медиа к полю (используется TV-подобными полями).
- getTabIdsFromKeys(keys) - сопоставить ключи вкладок с их идентификаторами компонентов.
- showErroredTab() - переключиться на первую вкладку, содержащую поле с ошибкой, после неудачной проверки.
Смотрите также¶
- Объект MODExt MODx
- Учебник по MODExt
- MODx.combo.ComboBox
- MODx.Console
- MODx.FormPanel
- MODx.grid.Grid
- MODx.grid.LocalGrid
- MODx.msg
- MODx.tree.Tree
- 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
Budget
$194 per month—let's make that $500!
Learn more










