JHTML-BEHAVIOR-FORMVALIDATION-001
JHtml::_('behavior.formvalidation')
behavior.formvalidation
Joomla 4 renamed the loader. form-validate CSS class remains, but the J3 helper key is the wrong load path.
JHtml::_('behavior.formvalidation') → form.validate WebAsset
Symptoms people search
required fields submit anyway · formvalidation
Replace this code
Swap JHtml::_('behavior.formvalidation') for form.validate WebAsset.
Joomla 3
Remove or stop calling this
JHtml::_('behavior.formvalidation');
<form class="form-validate">Joomla 4 / 6
Use this instead
HTMLHelper::_('behavior.formvalidator');
// or $wa->useScript('form.validate');
<form class="form-validate">How to fix it
- 1Use formvalidator / form.validate assets.
- 2Keep required and validate-username classes.
Also known as
behavior.formvalidation · form.validate · form-validate
Related issues
- Joomla 3 → 4JavaScript
behavior.framework (MooTools)
JHtml::_('behavior.framework') → Do not load MooTools — use vanilla JS or WebAssetManager
- Joomla 3 → 4JavaScript
JHtmlBootstrap::modal()
JHtmlBootstrap::modal() → HTMLHelper::_('bootstrap.renderModal')
- Joomla 3 → 4JavaScript
Chosen.js (formbehavior.chosen)
JHtml::_('formbehavior.chosen') → Core styled <select>, Choices.js, or Tom Select
- Joomla 3 → 4Joomla API
JHtmlBatch
JHtmlBatch → Layouts joomla.html.batch.*
- Joomla 4 → 5JavaScript
addScript() / addStyleSheet() vs WebAssetManager
$doc->addScript() → WebAssetManager + joomla.asset.json
- Joomla 5 → 6JavaScript
Assuming jQuery is always on the page
JHtml::_('jquery.framework') → Declare jQuery in joomla.asset.json only if you still need it