Hola masterjail:
En un formulario se deben usar los atributos name para poder enviar/recibir datos
La implementación de explorer es defectuosa y en ocasiones puede usarse un id por un name pero el id es único y se referencia con getElementById, en cambio puede haber varios campos name iguales (como los radios) y se pueden referenciar con getElementsByName... fíjate que una función es singular y otra plural.
El campo name también se usa en otras colecciones o arrays (images, forms, elements, links, anchors)
Saludos