Для проверки заполнения формы вместо 

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

лучше использовать добавления кода валидатора напрямую

window.addEvent('domready', function() {
 var myFormValidator = new Form.Validator($('adminForm'));
});

где adminForm - id формы

<form action="#" method="post" name="adminForm" id="adminForm">

Существую предопределеные правила проверки

  • required
  • length
  • minLength
  • maxLength
  • validate-numeric
  • validate-integer
  • validate-digits
  • validate-alpha
  • validate-alphanum
  • validate-date
  • validate-email
  • validate-url
  • validate-currency-dollar
  • validate-one-required

Чтобы использовать предопределенное правило в нужный тэг добавляем соответствующий класс:

<input type="text" class="validate-alpha" value="" />

В данном случае, если поле оставить пустым ошибки не будет, чтобы сделать это поле обязательным, добавим еще валидатор required

<input type="text" class="validate-alpha required" value="" />

Вывод сообщений об ошибках делается так:

window.addEvent('domready', function() {
 var myFormValidator = new Form.Validator($('adminForm'),
  {
   onElementFail: function(el, validator) {
    alert(this.getValidator(validator[0]).getError(el));
   }
  }
 );
});

Самое сложное тут было найти сообщение об ошибке )

Теперь осталось перевести на русский сами сообщения об ошибках

l = Locale.getCurrent().name;

Locale.define(l, 'FormValidator', {
 alpha: "Пожалуйста, используйте только буквы (A-Z). Без пробелов и других символов."
});

Можно сразу добавить переводы для всех предопределенных проверок.

Перевел с помощью переводчика Google

window.addEvent('domready', function() {

 l = Locale.getCurrent().name;

 Locale.define(l, 'FormValidator', {
  required: "Это поле обязательно для заполнения",
  numeric: 'Пожалуйста, введите только числовые значения ("1" или "1,1" или "-1" или "-1,1")',
  integer: "Пожалуйста, введите целое число. Номера с десятыми (например, 1,25) не допускаются",
  digits: "Пожалуйста, используйте только цифры, избегайте пробелов и других символов, таких как точки или запятые.",
  alpha: "Пожалуйста, используйте только буквы (A-Z). Без пробелов и других символов.",
  alphanum: "Пожалуйста, используйте только буквы (AZ) и цифры (0-9). Без пробелов и других символов.",
  email: "Пожалуйста, введите правильный адрес электронной почты. Например, fred@domain.com",
  url: "Пожалуйста, введите правильный URL"
 });

var myFormValidator = new Form.Validator($('adminForm'),
{
onElementFail: function(el, validator) {
alert(this.getValidator(validator[0]).getError(el));
}
}
);
}); 

Можно также добавлять свои правила проверки:

myFormValidator.add('isEmpty', {
 errorMsg: 'This field is required',
 test: function(element){
  if (element.value.length == 0) return false;
  else return true;
 }
});

или еще

myFormValidator.add('validate-alpha',
{
errorMsg: 'Пожалуйста, используйте только буквы (A-Z, А-Я). Без пробелов и других символов.',
test: function(element)
{
regex=/^[a-zA-Zа-яА-Я]+$/;
return element.get('value').test(regex,'i');
}
}
); 

Проверку можно делать не для всех полей сразу, для этого устанавливаем свойство serial в false

var myFormValidator = new Form.Validator(
 $('adminForm'),
 {
  serial: false,
  onElementFail: function(el, validator) {

   alert(this.getValidator(validator[0]).getError(el));

  }
 }
);