Hola dieguicho:
Me parece que haces mal poniendo el mismo id en distintos elementos, ya que no es recomendable y puede generar errores...
Puedes crearte cualquier atributo y dejar que el id tenga su función propia.
Así como usas id puedes usar identificador, y para la referencia puedes usar this.id (o this.identificador)
alert(this.id)...
Otra forma para leer atributos es getAttribute, o attribute["id"] (attribute es la colección de atributos)... y para dar valores a atributos puedes usar setAttribute(elNombre, elValor).
Por último, el array de atributos (attribute) se trata de objetos con dos elementos name y value, y puedes obtener todos los nombres y valores de los atributos de cualquier etiqueta recorriéndolos con un bucle ya que attributes tiene su propiedad length, y se pueden referenciar por su índice numérico.
Saludos