Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/03/2012, 17:30
setenta
 
Fecha de Ingreso: octubre-2008
Mensajes: 70
Antigüedad: 15 años, 6 meses
Puntos: 2
Formula en Javascript

Hola. Solo queria saber si me podian dar alguna idea. Ayer fui ayudado para terminar el siguiente codigo, que hace que cuando una persona seleccione una opcion de alimento, coloque en pantalla el valor de calorias y los va sumando en otro cuadro de texto.

Cita:
script language="javascript">
var valor_total = 0;
var _list_kalorias = new Array(); //Array para _list_kalorias
function insertar_el_numero(op) {
var chosenoption=op.options[op.selectedIndex] //this refers to "selectmenu"
if (!isNaN(chosenoption.value)){
_list_kalorias.push(chosenoption);
calculate();
}
}
function calculate(){
var form = document.getElementById('form-carnes');
var txt='';
valor_total=0;
for(var i =0;i<_list_kalorias.length;i++ ){
var op = _list_kalorias[i];
txt+=op.text +':'+op.value+"\n";
valor_total += parseInt(op.value);
}
form.seleccionados.value=txt;
form.suma.value="Total: "+valor_total +" kcal" ;
}

// End -->
</script>

En un cuadro de texto imprime los alimentos con sus calorias y en otro las va sumando.
Lo que quiero hacer ahora y no veo como (pense en hacer otra funcion similar, que me tire un valor y a ese valor multiplicarlo con el valor de la funcion calculate()) es que al usar otra lista select que tenga los gramos (100, 200, 300 gramos) me multiplique las kilocalorias por 1, 2, 3, etc. y luego imprima dicho valor en un cuadro de texto y al final lo sume normalmente. Porque, por ejemplo, si las calorias de un bife es de 300 calorias por 100 gramos y yo como 200, debería colocar 300 cal x 2 = 600 cal y a ese resultado imprimirlo en pantalla. Espero haber sido claro (no es fácil), muchas gracias