Валидация множественных radio формы

Была необходимость написать небольшую процедурку, которая бы проверяла во всех ли радиобоксах группы пользователь поставил точку. При этом основная заморочка заключалась в том, что это тест, в котором кроме радиобоксов, еще иногда могут встречаться тестовые инпуты и чекбоксы. Думал, что за 30 минут, я найду нужную мне функцию в интернете…
Не тут-то было. Валидаторов радиобоксов там действительно как грязи, но на серьезных тестах, они почему-то сыпались. Пришлось написать свой универсальный валидатор форм.


function checkform(f)
{
var flag = true;
var prev = ""; 
for (var i = 0; i < elements.length; i++)   {
      var el = f.elements[i];
      if (el.type == 'radio') {
         if (prev != el.name)
       {         if (!flag)
          {
         alert('Warning! No answer selected');
           return false;
         }
       flag = false;
       prev = el.name;
   }
     flag = flag || el.checked; 
} }
 return true; }