Sumar con formulario en javascript
Tengo un problema. Y aunque no me gusta pedir ayuda (ya que prefiero buscar yo la solución), me veo en la obligación de preguntar directamente. Puesto que no encuentro la solución.
Tengo un formulario dónde al pulsar un checkbox se suma una cantidad a un Total. Si se desactiva el checkbox, dicha cantidad se resta.
Mi problema viene a que soy incapaz de hacer esto mismo, usando type="radio" en lugar de type="checkbox". No me llega a restar, siempre suma, incluso puedes pulsar varias veces el mismo radio y continuará sumando.
Intento que al cambiar de radio, la suma se vea modificada, ya que al cambiar de opción, cambia también el valor.
Así que pregunto ¿algún alma caritativa que ilumine el camino a seguir?
El código js es el siguiente:
var total=0;
function sumar(valor) {
total += valor;
document.miformulario.total.value=total;
}
function restar(valor) {
total-=valor;
document.miformulario.total.value=total;
}
El html de los checkbox, que funciona perfectamente:
<input type="checkbox" name="rojo" onClick="if (this.checked) sumar(3); else restar(3)" />
<input type="checkbox" name="verde" onClick="if (this.checked) sumar(5); else restar(5)" />
Y el html de los Radio, que me da dolores de cabeza porque tal y como está ahora, funciona mal:
<input type="radio" name="direccion" value="10" onClick="if (this.checked) sumar(10); else restar(10)"/>Norte
<input type="radio" name="direccion" value="12" onClick="if (this.checked) sumar(12); else restar(12)"/>Sur
Total: <input type="text" name="total" value="0" >
PD: he puesto un extracto, por si alguien dice que me falta el <form> o el <script>
RRV
Encontré en la web una solución. Para quien le interese está aquí: http://www.forosdelweb.com/f13/sumar-total-con-checkbox-radio-891476/