← Назад в FAQ

tgx:ajax-json-body — Маппинг в `data-hx-json-body`

tgx:ajax-json-body#

Маппинг в data-hx-json-body.

Синтаксис#

<div tgx:ajax-json-body="true"></div>

Пример 1: минимум (копипаст для старта)#

<div tgx:ajax-json-body="true"></div>

Пример 2: реальный сценарий#

<button tgx:ajax-post="/api/v1/domain/verify" tgx:ajax-json-body="true" tgx:ajax-vals='{"domain":"example.com"}'>Запросить TXT</button>

Разбор#

Переключает формат body на JSON (обычно в паре с tgx:ajax-vals).

Когда использовать#

  • Когда нужно обновлять часть страницы без полной перезагрузки (формы, фильтры, списки, таблицы).
  • Когда нужно контролировать UX запроса: куда вставить ответ, по какому событию отправить и как обработать подтверждение.

Поведение в runtime#

  • Тип: пользовательская директива.
  • В sandbox директива tgx:ajax-json-body: запрещена.
  • Это HTMX-мост: runtime маппит tgx: в соответствующие data-hx- атрибуты.

Частые ошибки#

  • Включать JSON body, но отправлять несовместимый payload
  • Забывать обработку ошибок API в target-блоке

Проверка перед публикацией#

  • Endpoint ожидает JSON-представление body
  • tgx:ajax-vals содержит корректный JSON

См. также#

Связанные статьи