Быстрая валидация формы на jQuery без плагинов

Все поля для валидации необходимо разметить по принципу:

<input class="js-validate" data-errmess="Текст ошибки" data-rule="Тип проверки" />
validate.js
function checkInvalidInput($object, errMessage) {
  $object.focus();
  alert(errMessage);
  return false;
}
 
function checkForm($form) {
  var isValid = true;
  var $fields = $form.find('.js-validate');
 
  if ($fields.length) $fields.each(function() {
    var errMessage = $(this).data('errmess');
    switch ($(this).data('rule')) {
      case 'text':
        if(isValid && !$(this).val().match(/(.+)/)) {
          isValid = checkInvalidInput($(this), errMessage);
        }
        break;
      case 'radio':
        if(isValid) {
          var $radios = $form.find('input[type="radio"][name="' + $(this).attr('name') + '"]');
          var $checkedRadios = $radios.filter(':checked');
          if(!$checkedRadios.length) {
            isValid = checkInvalidInput($(this), errMessage);
          }
        }
        break;
      case 'email':
        if(isValid && !$(this).val().match(/^[0-9A-Za-z\._-]+@([0-9a-z\._-]+\.)+[a-z]{2,4}$/)) {
          isValid = checkInvalidInput($(this), errMessage);
        }
        break;
      case 'captcha':
        if(isValid && !$(this).val().match(/(.+)/)) {
          isValid = checkInvalidInput($(this), errMessage);
        }
        break;
      case 'custom1':
        if (isValid) {
          if(!isSelectChecked($(this), 8)) {
            isValid = checkInvalidInput($(this), errMessage);
          }
        }
    }
  });
  return isValid;
}
 
// проверка select на значение (не должно совпадать с дефолтным)
function isSelectChecked($input, defaultValue) {
  var isValid = $input.val() != defaultValue;
  return isValid;
}
 
function checkSubmitForm() {
  var form = $('.js-download'); // выбираем форму для валидации
  var isValid = checkForm(form);
  if (isValid) yaCounter_xxx.reachGoal('downcel'); // форма отправлена, цель-достигнута
  return isValid;
}

Вешаем на сабмит обработчик:

<form action="" method="post" onsubmit="return checkSubmitForm();" class="js-download">
Печать/экспорт