Comunidad de diseño web y desarrollo en internet online

Calculadora de Suma en Formulario radio botton y select list

Citar            
MensajeEscrito el 05 Feb 2014 12:26 am
Hola a todos,

Estoy un poco atorado en el código, estoy haciendo una pequeña calculadora que suma en un formulario y estoy usando radio botton y select list, este es el código que llevo los radios ya me suman pero no se como hacer para que me sume el select:

<script type="text/javascript">
function Suma2(isChecked, valor){
if (isChecked) {
siniva2 = (parseFloat(document.sumar2.totalsiniva2.value) + parseFloat(valor)).toFixed(2);
} else {
siniva2 = (parseFloat(document.sumar2.totalsiniva2.value) - parseFloat(valor)).toFixed(2);
}
document.sumar2.totalsiniva2.value = siniva2;
document.sumar2.total2.value = parseFloat(siniva2).toFixed(2);
}
</script>

<fieldset data-role="controlgroup" data-type="horizontal">
<legend>Sexo:</legend>
<input type="radio" name="sexo" id="radio_1" value="0.1" onClick="Suma2(this.checked,this.value)" />
<label for="radio_1">Femenino</label>
<input type="radio" name="sexo" id="radio_2" value="0.2" onClick="Suma2(this.checked,this.value)" />
<label for="radio_2">Masculino</label>
</fieldset>
<select name="Edad" id="age" >
<option value="50">0</option>
<option value="100">1</option>
<option value="2">2</option>
</select>
<input type="hidden" value="0.00" id="totalsiniva2" name="totalsiniva2" />
<input id="pago" class="resultado" type="text" id="total2" name="total2" value="0" disabled />

No se mucho de java, espero me puedan echar una mano, mil gracias a todos.
Buen día.

Por alfre04

4 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Feb 2014 04:35 pm
Primero que nada. El código que has puesto es JavaScript, no Java. JavaScript no es lo mismo que Java, son dos lenguajes diferentes.

La verdad que no se entiende bien la lógica del cálculo que intentas hacer. En la función Suma2 le pasas como parámetro el estado del radio pero la función se dispara cuando el visitante hace click, pero si hace click, por supuesto que el radio va a estar chequeado. Por lo tanto el "else" del "if" nunca se va a ejecutar.

En esa función tomas el value de "totalsiniva2" y el sumas (o restas) el value del radio donde el visitante hizo clic, pero significa que se hará esa operación tantas veces como el visitante haga clic independientemente del estado del radio (por lo dicho, si el visitante hace clic en el radio, el radio está chequeado).

Para entender lo que quieres hacer ¿podrías poner la suma algebraica de la operación que quieres hacer? y un ejemplo de entrada de datos y resultados no vendría mal.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 05 Feb 2014 05:40 pm

DriverOp escribió:

Primero que nada. El código que has puesto es JavaScript, no Java. JavaScript no es lo mismo que Java, son dos lenguajes diferentes.

La verdad que no se entiende bien la lógica del cálculo que intentas hacer. En la función Suma2 le pasas como parámetro el estado del radio pero la función se dispara cuando el visitante hace click, pero si hace click, por supuesto que el radio va a estar chequeado. Por lo tanto el "else" del "if" nunca se va a ejecutar.

En esa función tomas el value de "totalsiniva2" y el sumas (o restas) el value del radio donde el visitante hizo clic, pero significa que se hará esa operación tantas veces como el visitante haga clic independientemente del estado del radio (por lo dicho, si el visitante hace clic en el radio, el radio está chequeado).

Para entender lo que quieres hacer ¿podrías poner la suma algebraica de la operación que quieres hacer? y un ejemplo de entrada de datos y resultados no vendría mal.


Hola amigo, ante todo muchas gracias por contestar y perdona mi torpeza por no explicarme bien.

Lo que quiero hacer una pequeña calculadora de hidratación en un formulario, tengo mis radio bottom con sexo, si seleccionas Masculino suma 0.20 o si seleccionas femenino suma 0.10, tengo fieldset y tengo hay las edades, lo que busco es de igual forma que los radio bottom sumen, mi fieldset sume también, por ejemplo si seleccionas 8 años sume 0.7 o si seleccionas 25 sume 2.2.

Espero explicarme bien, mil gracias.

Por alfre04

4 de clabLevel



 

chrome
Citar            
MensajeEscrito el 05 Feb 2014 07:13 pm
Pues lamentablemente no, pues no estás dando la ecuación del cálculo.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 05 Feb 2014 07:37 pm

DriverOp escribió:

Pues lamentablemente no, pues no estás dando la ecuación del cálculo.


Ok hay va,

Edad list select (Se tiene que seleccionar solo uno para poder empezar la suma)

    1-8 años valor= 0.7
    9-13 años valor=1.6
    14-18 añor valor=1.9

Sexo radio Bottom (Se tiene que seleccionar solo uno)

    Femenino valor=0.1
    Masculino Valor=0.2

días radio Bottom (Se tiene que seleccionar solo uno)

    1-2 dias valor=0.2
    3-4 dias valor=0.4
    5 o más valor=0.6


Total=Suma de los valores seleccionados de edad,sexo,días.

Espero sea un poco más fácil así, saludos.

Por alfre04

4 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.