Foros del Web » Programando para Internet » Javascript »

como hacer condicion en una suma

Estas en el tema de como hacer condicion en una suma en el foro de Javascript en Foros del Web. Hola buenas a todos, veran tengo un problema facil de solucionar pero que no me sale por que soy novato veran: En codigo javascript tengo ...
  #1 (permalink)  
Antiguo 25/06/2012, 09:03
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
como hacer condicion en una suma

Hola buenas a todos, veran tengo un problema facil de solucionar pero que no me sale por que soy novato veran:

En codigo javascript

tengo varios elementos seleccionados previamente de un select en html.

Dichos elementos guardan y se suman en javascript y el resultado total se guarda en una variable.

(hasta ahí bien)

Pero...

si de los 4 elementos que quiero sumar resulta que el elemento 2 ( por ejemplo),

puede tener dos variantes entre "2a" o "2b" o bien uno o bien otro, osea:

suma total = 1 + (2a o 2b) + 3 +4

¿como se programaria eso?


Les paso el codigo en si donde tengo que hacerlo, gracias de antemano.


function addTotals() {
with (document.forms["f1"])
{

// Instrucción para obtener el seleccionado
var sell_uno = document.getElementById("precio_modelos").selected Index;
var sell_dos = document.getElementById("precio_acabado_1").select edIndex;
var sell_tres = document.getElementById("precio_acabado_2").select edIndex;
var sell_cuatro = document.getElementById("precio_acabado_3").select edIndex;
var sell_cinco = document.getElementById("precio_complementos").sel ectedIndex;



var suma = (
Number( precio_modelos.options[sell_uno].getAttribute('valor'))+
Number( precio_acabado_1.options[sell_dos].getAttribute('valor'))+
Number( precio_acabado_2.options[sell_tres].getAttribute('valor'))+
Number( precio_acabado_3.options[sell_cuatro].getAttribute('valor'))+
Number( precio_complementos.options[sell_cinco].getAttribute('valor'))
);



total.value = roundTo( suma, 2 );


}
}
  #2 (permalink)  
Antiguo 25/06/2012, 10:25
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: como hacer condicion en una suma

usando el operador ternario "?", pero claro necesitas una condición que diga cual de los 2

o fragmentas la suma por pedazos, tu decides.

PD: utiliza la herramienta highlight del editor del foro para postear código
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/06/2012, 11:58
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años
Puntos: 5
Respuesta: como hacer condicion en una suma

Si es que no se como programarlo necesito ayuda en eso lo que puedo decir es que mi corto entender sea:

suma total = 1 + (2a o 2b) + 3 +4

es decir que tengo dos select_1 , en el primer select esta 1 + ( 2a )+ 3 +4

y en el segundo select_2 esta 1 + ( 2b )+ 3 +4

decir que los select son excluyentes es decir si se da select_1 no se da select_2


pero en el calculo de javascript tiene que detectar 2a o 2b en la suma total

si me pudierais escribir que debo poner me sacariais de un gran apuro es que estoy muy verde y para variar se me agota el tiempo . ufff

ahh se me olvidaba este ejemplo que os pido el favor es para 2 select, pero en realidad es para 4 select es decir 2c y 2d

osea : 1 + (2a o 2b o 2c o 2d) + 3 +4

Última edición por mensajeescrito; 25/06/2012 a las 12:08
  #4 (permalink)  
Antiguo 25/06/2012, 14:39
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: como hacer condicion en una suma

francamente, si tu no sales del enredo, menos podemos ayudarte, si los selects son mutuamente excluyentes (XOR) entonces analiza cada par antes y establece el valor en una variable común

http://www.howtocreate.co.uk/xor.html
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Etiquetas: html, suma
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:48.