В продолжение Проверка формы с помощью mootools - Form.Validator , пример добавления проверки полей формы в раскладку представления:

для формы добавим:

JHtml::_('behavior.keepalive');

и сам javascript:

<script type="text/javascript">
 window.addEvent(&#39;domready&#39;, function() {
 
  l = Locale.getCurrent().name;
 
  Locale.define(l, &#39;FormValidator&#39;, {
   required: "Это поле обязательно для заполнения",
   numeric: &#39;Пожалуйста, введите только числовые значения ("1" или "1,1" или "-1" или "-1,1")&#39;,
   integer: "Пожалуйста, введите целое число. Номера с десятыми (например, 1,25) не допускаются",
   digits: "Пожалуйста, используйте только цифры, избегайте пробелов и других символов, таких как точки или запятые.",
   alpha: "Пожалуйста, используйте только буквы (A-Z). Без пробелов и других символов.",
   alphanum: "Пожалуйста, используйте только буквы (AZ) и цифры (0-9). Без пробелов и других символов.",
   email: "Пожалуйста, введите правильный адрес электронной почты. Например, fred@domain.com",
   url: "Пожалуйста, введите правильный URL"
  });
 
var myFormValidator = new Form.Validator
(
$(&#39;adminForm&#39;), {
serial: false,
onElementFail: function(el, validator)
{
//alert(this.getValidator(validator[0]).getError(el));
}
}
);
 
myFormValidator.add(&#39;validate-alpha&#39;,
{
errorMsg: &#39;Пожалуйста, используйте только буквы (A-Z, А-Я). Без пробелов и других символов.&#39;,
test: function(element)
{
regex=/^[a-zA-Zа-яА-Я]+$/;
return element.get(&#39;value&#39;).test(regex,&#39;i&#39;);
}
}
);
 
myFormValidator.add(&#39;validate-alphanum&#39;,
{
errorMsg: &#39;Пожалуйста, используйте только буквы (A-Z, А-Я) и цифры (0-9). Без пробелов и других символов.&#39;,
test: function(element)
{
regex=/^[a-zA-Zа-яА-Я0-9]+$/;
return element.get(&#39;value&#39;).test(regex,&#39;i&#39;);
}
}
);
 
 
myFormValidator.add(&#39;validate-phone&#39;,
{
errorMsg: &#39;Пожалуйста, введите правильный телефонный номер.&#39;,
test: function(element)
{
if ((element.get(&#39;value&#39;) == null) || (element.get(&#39;value&#39;).length == 0)){
return true;
}else{
regex=/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/;
return element.get(&#39;value&#39;).test(regex,&#39;i&#39;);
 
}
}
}
);
 
document.formvalidator = myFormValidator;
 
});
 
Joomla.submitbutton = function(task) {
 
if (task == &#39;register.cancel&#39; || document.formvalidator.validate()) {
Joomla.submitform(task, document.getElementById(&#39;adminForm&#39;));
} else {
 
alert(&#39;<?php echo $this->escape(JText::_(&#39;JGLOBAL_VALIDATION_FORM_FAILED&#39;));?>&#39;);
}
}
</script>

Для полей не прошедших проверку добавляется класс validation-failed и при нажатии на отправить появляется сообщение - Неврная форма.

Кнопки отправить и отменить:

<div class="form-buttons">
  <button type="button" onclick="Joomla.submitbutton(&#39;register.save&#39;)">
   <?php echo JText::_(&#39;JSAVE&#39;) ?>
  </button>
  <button type="button" onclick="Joomla.submitbutton(&#39;register.cancel&#39;)">
   <?php echo JText::_(&#39;JCANCEL&#39;) ?>
  </button>
 </div>

 

Чтобы сделать комментарий, нужно авторизоваться на сайте!