el problema no es que preguntes tanto, el problema es querer hacer las cosas con los pies. quiero decir, aun te hace falta leer mucho material referente a javascript y el DOM. muchas de tus dudas se responden en la gran mayoria de los manuales. veamos...
parece que tienes una confunsion bien notable a lo que obtener la referencia de un elemento por ID o por NAME. el atributo no es quien define las propiedades que ese elemento puede tener, es otra entidad que define sus propiedades. en el caso de los elementos HTML es el
DOM. NAME y ID siemplemente son dos formas de identificar un elemento pero a la misma vez tiene grandes diferencias:
- un ID lo puede tener literalmente cualquier elemento, un NAME solo algunos elementos.
- para tomar un elemento por ID se tiene que usar explicitamente el metodo getElementById, con NAME puedes usar la jerarquia definida por DOM. ejemplo, document.nombre_formulario.nombre_campo...
- un ID es unico en el documento y no se puede repetir. en contraste, un NAME puede repetirse cuantas veces quieras en el documento
simplemente lo que tienes que hacer son tres pasos:
- cada vez que invoques tu funcion, le pasas como parametro this. o sea, dentro de los parentesis es lo unico que tienes que poner. no necesitas this.form porque dicha linea hace referencia al formulario. lo que necesitas es la referencia del radio en si, el cual se representa con this.
- en la declaracion de tu funcion define el parametro. o sea,
Código:
function nombre_funcion(parameter){
...
}
de modo que parameter es una variable temporera que contendra el radio.
- finalmente en tu funcion debes cambiar todas las referencias del campo por el parametro definido. es decir, en tu funcion tienes document.fopcion.rad1.value. lo marcado en rojo lo cambias por el nombre del parametro definido. en mi ejemplo, parameter.