questo di seguito dovrebbe servire a verificare se un valore scelto in alcuni select è presente più di una volta, in tal caso avverte con un aleert e interrompe lo script, altrimenti dovrebbe mandare via il form. il problema è che se c'è un valore ripetuto mi avverte e va tuto ok, mentre se non c'è un valore ripetuto mi restituisce un errore:"value è nullo o non è un oggetto". Perchè? non riesco a capire. Ecco il codice

codice:
function valida_form(){

var a, b, c, d, e, f, g, h, i;
a = document.getElementsByTagName("select");
b = a.length;
for (i = 1; i <= b; i++){
                               g = a[i].value;
                               e = 0;
                               for (d = 1; d < b; d++){
                                                               h = a[d].value;
                                                               c = new Array();
                                                               if ( g == h ){
                                                                                c[e] = e;
                                                                                e++;
                                                                                f = c.length;
                                                                                if (f > 1){
                                                                                             alert("errore:'"+g.value+"' è presente più di una volta, correggi!");
                                                                                             return;
                                                                                             }
                                                                                }
                                                                }
                              }
alert("procedo all'invio");
document.form.submit();
}
grazie