codice:
var checked;
var qta = document.forms[formName].elements;
if(qta.length) {
  for(var i=0; i<qta.length; i++){
    checked = qta["id[]"][i].checked;
  }
} else {
  checked = qta["id[]"].checked;
}
Ho un po' semplificato un if.

Pero` c'e` un errore di logica: in caso di loop, checked prende il valore (true o false) dell'ultimo checkbox testato. Non credo volessi questo.