a mi me funciona perfectamente.
la linea que dices, no puede devolver todos los checks, porque al final le indicas que te devuelva el checked, así que solo te devolverá true o false, según el valor del primer check:
var checkboxes = document.getElementById('check').
checked
getElementById está en singular, por lo tanto sólo devuelve
un elemento, a diferencia de get
ElementsByTagName
deberías postear la parte en HTML para ver porque no te funciona, la mia de prueba es:
Código HTML:
Ver original <input type="checkbox" id="check1" name="x1" value="1" /> <input type="checkbox" id="check2" name="x2" value="2" /> <input type="checkbox" id="check3" name="x3" value="3" />