Похоже, что вы хотите запускать проверяющие функции на каждой итерации, даже если для 'valid' уже установлено значение false. Однако используемая вами операция && будет закорочена, поэтому, хотя цикл будет продолжаться, функции проверки не будут вызываться на последующих итерациях.
Действительно простой альтернативой, которая будет работать так, как вы хотите, будет:
for (var i = 0, arrayLength = rows.length; i < arrayLength; ++i) {
if(!validateClass(rows[i].getElementsByTagName("input")[0])) valid = false;
if(!validateGroup(rows[i].getElementsByTagName("input")[1])) valid = false;
if(!vvalidateGroup(rows[i].getElementsByTagName("input")[2])) valid = false;
}