Foros del Web » Programando para Internet » Javascript »

Funcion y dato oculto

Estas en el tema de Funcion y dato oculto en el foro de Javascript en Foros del Web. Algún dia sabré como, de momento voy aprendiendo poco a poco. Muchas gracias por la ayuda. La primera parte del código funciona perfectamente (muchas gracias ...
  #1 (permalink)  
Antiguo 14/04/2013, 09:38
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Funcion y dato oculto

Algún dia sabré como, de momento voy aprendiendo poco a poco. Muchas gracias por la ayuda.
La primera parte del código funciona perfectamente (muchas gracias por vuestros aportes), pero la segunda función llamada getotal() no quiere. Además me gustaría que el resultado de la primera función que sale en <p id="demo"></p>, y que uso en el segunda, no se muestre en el navegador.

Código:
<!DOCTYPE html>
<html>
<body>

<p>Cálculo del Gasto Energético Total</p>
<p>El gasto energético total es la cantidad absoluta de calorías que quema nuestro organismo a diario debido a diferentes actividades. Depende de tres factores: el gasto energético en reposo o metabolismo basal, la termogénesis inducida por la dieta, y la actividad física. Para mantener el peso estable es necesario que la energía que se ingiere en forma de alimentos sea equivalente a la que se gasta en mantener nuestras funciones vitales y nuestra actividad diaria.</p>
<form>
<table width="420" border="1">
  <tr>
    <td width="140">Sexo: M o F</td>
    <td width="147"><select name="sexo" id="sexo">    
       <option value="M" selected="selected">Masculino</option>
       <option value="F">Femenino</option>       
   </select></td>
    <td width="241" rowspan="5"><p id="gmbkcal"></p></td>
  </tr>
  <tr>
    <td>Peso (Kg):</td>
    <td><input id="peso" value="80" /></td>
    </tr>
  <tr>
    <td>Talla (m):</td>
    <td><input id="talla" value="1.85" /></td>
    </tr>
  <tr>
    <td>Edad:</td>
    <td><input type="text" id="edad" /></td>
    </tr>
  <tr>
    <td>Actividad:</td>
    <td> 
   <select name="actividad" id="actividad">    
       <option value="sedentaria" selected="selected">Sedentaria</option>
       <option value="ligera">Ligera</option>
       <option value="media">Media</option>
	   <option value="muy activa">Muy Activa</option>
       <option value="extrema">Extrema</option>
   </select></td>
    </tr>
</table>
<input type="button" onClick="calculo(); getotal();" value="Resultado" />
</form>

<p id="demo"></p>

<script>

function calculo(){
var z = document.getElementById("sexo").value;
var y = document.getElementById("talla").value;
var t = document.getElementById("peso").value;
var p = document.getElementById("edad").value;

var a=66.473;
var b=13.752;
var c=b*t;
var d=5.0033;
var e=100;
var f=y*e;
var g=d*f;
var h=6.755;
var i=h*p;
var j=655.0955;
var k=9.563;
var l=k*t;
var m=1.8496;
var o=m*f;
var q=4.6756;
var r=q*p;
var s=(a+c+g-i).toFixed(0);
var u=(j+l+o-r).toFixed(0);
var v = 0;

if (z=="M" || z=="m")
  {
  v=s;
  }
if (z=="F" || z=="f")
  {
  v=u;
  }
   
document.getElementById("demo").innerHTML=v+" Kcal";
}
</script>

<script> 
funcion getotal(){
var get=document.getElementById("demo").value;
var act=document.getElementById("actividad").value;
var fija=1.1;
var sed=1;
var lig=1.2;
var med=1.4;
var mac=1.6;
var ext=1.8;
var gmb="";

if (act=="sedentaria")
  {
  gmb=get*fija*sed
  }
if (act=="ligera")
  {
  gmb=get*fija*lig
  }
if (act=="media")
  {
  gmb=get*fija*med
  }
if (act=="muy activa")
  {
  gmb=get*fija*mac
  }
if (act=="extrema")
  {
  gmb=get*fija*ext
  }

document.getElementById("gmbkcal").innerHTML=gmb+" Kcal";
}
</script>

</body>
</html>
  #2 (permalink)  
Antiguo 14/04/2013, 11:07
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Funcion y dato oculto

Si en lugar de

Código:
funcion getotal(){ 
pusieses
Código:
function getotal(){
 
La cosa tomaría otro rumbo, seguiría habiendo un par de errores pero la función se ejecutaría

Para ocultar el valor mencionado, bastaría con que no pongas
Código:
document.getElementById("demo").innerHTML=v+" Kcal";
aunque eso inevitablemente me lleva a una pregunta, ¿quién puso eso ahi?, si no querés mostrarlo no lo ponés, ¿o acaso está copiando la script de otra parte?
Si es esto último, mejor sería que empezaces por un buen manual, para, entre otras cosas, saber que hace innerHTML
http://librosweb.es

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 18/04/2013 a las 12:56
  #3 (permalink)  
Antiguo 15/04/2013, 07:02
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Funcion y dato oculto

Muchas gracias emprear.
El error fatal de function ya lo corregí, ademas de alguna que otra corrección, pero todavía no lo he conseguido, sigo investigando.

El código lo he echo yo todo, la primera parte se corresponde a una "aplicación" para calcular el metabolismo basal. Este código que apunté agora es para calcular el gasto energético total, y para ello necesito el cálculo anterior del metabolismo basal. Pero ese primer cálculo no me interesa que se vea para este segundo.

Por otra parte muchas gracias por el enlace que me propones. Soy muy novato en este tema, y me aventuré en esto con la ayuda de un par de manuales y los foros de programación. De alguna forma hay que aprender.

"código corregido"
Código:
<!DOCTYPE html>
<html>
<body>

<p>Cálculo del Gasto Energético Total</p>
<p>El gasto energético total es la cantidad absoluta de calorías que quema nuestro organismo a diario debido a diferentes actividades. Depende de tres factores: el gasto energético en reposo o metabolismo basal, la termogénesis inducida por la dieta, y la actividad física. Para mantener el peso estable es necesario que la energía que se ingiere en forma de alimentos sea equivalente a la que se gasta en mantener nuestras funciones vitales y nuestra actividad diaria.</p>
<form>
<table width="420" border="1">
  <tr>
    <td width="140">Sexo: M o F</td>
    <td width="147"><select name="sexo" id="sexo">    
       <option value="M" selected="selected">Masculino</option>
       <option value="F">Femenino</option>       
   </select></td>
    <td width="241" rowspan="5"><p id="gmbkcal"></p></td>
  </tr>
  <tr>
    <td>Peso (Kg):</td>
    <td><input id="peso" value="80" /></td>
    </tr>
  <tr>
    <td>Talla (m):</td>
    <td><input id="talla" value="1.85" /></td>
    </tr>
  <tr>
    <td>Edad:</td>
    <td><input type="text" id="edad" /></td>
    </tr>
  <tr>
    <td>Actividad:</td>
    <td> 
   <select name="actividad" id="actividad">    
       <option value="sedentaria" selected="selected">Sedentaria</option>
       <option value="ligera">Ligera</option>
       <option value="media">Media</option>
	   <option value="muy activa">Muy Activa</option>
       <option value="extrema">Extrema</option>
   </select></td>
    </tr>
</table>
<input type="button" onClick="calculo(); getotal();" value="Resultado" />
</form>

<p id="demo"> Kcal</p>

<script>

function calculo(){
var z = document.getElementById("sexo").value;
var y = document.getElementById("talla").value;
var t = document.getElementById("peso").value;
var p = document.getElementById("edad").value;

var a=66.473;
var b=13.752;
var c=b*t;
var d=5.0033;
var e=100;
var f=y*e;
var g=d*f;
var h=6.755;
var i=h*p;
var j=655.0955;
var k=9.563;
var l=k*t;
var m=1.8496;
var o=m*f;
var q=4.6756;
var r=q*p;
var s=(a+c+g-i).toFixed(0);
var u=(j+l+o-r).toFixed(0);
var v = 0;

if (z=="M" || z=="m")
  {
  v=s;
  }
if (z=="F" || z=="f")
  {
  v=u;
  }
   
document.getElementById("demo").innerHTML=v;
}
</script>

<script> 
function getotal(){
var gasto=document.getElementById("demo").value;
var act=document.getElementById("actividad").value;
var fija=1.1;
var sed=1;
var lig=1.2;
var med=1.4;
var muya=1.6;
var ext=1.8;
var gmb="";

if (act=="sedentaria")
  {
  gmb=gasto*fija*sed
  }
if (act=="ligera")
  {
  gmb=gasto*fija*lig
  }
if (act=="media")
  {
  gmb=gasto*fija*med
  }
if (act=="muy activa")
  {
  gmb=gasto*fija*muya
  }
if (act=="extrema")
  {
  gmb=gasto*fija*ext
  }

document.getElementById("gmbkcal").innerHTML=gmb+" Kcal";
}
</script>

</body>
</html>
Cita:
Iniciado por emprear Ver Mensaje
Si en lugar de

Código:
funcion getotal(){ 
pusieses
Código:
function getotal(){
 
La cosa tomaría otro rumbo, seguiría habuendo un par de errores pero la función se ejecutaría

Para ocultar el valor mencionado, bastaría con que no pongas
Código:
document.getElementById("demo").innerHTML=v+" Kcal";
aunque eso inevitablemente me lleva a una pregunta, ¿quién puso eso ahi?, si no querés mostrarlo no lo ponés, ¿o acaso está copiando la script de otra parte?
Si es esto último, mejor sería que empezaces por un buen manual, para, entre otras cosas, saber que hace innerHTML
[url]http://librosweb.es[/url]

Saludos
  #4 (permalink)  
Antiguo 15/04/2013, 10:35
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Funcion y dato oculto

Si lo he entendido esto te podría servir

vos hasta ahora haces
Código:
<input type="button" onClick="calculo(); getotal();" value="Resultado" />
pero para la segunda función necesitás del valor obtenido con la primera, entonces la lógica sería
que el button solo ejecute cálculo() y tengas un resultado x, llamás a la función getotal() pasándole el valor obtenido, getotal(x),luego lo rcibe
Código:
getotal(valor){
// aqui hacés las operaciones con valor. que no es más que lo que se obtuvo en 
//calculo()
}
Otro detalle, cuando una función recibe valores desde campos de formulario, así hayan sido solo números, por ahi veo un campo edad, siempre lo hace como strings (cadenas), por lo tanto no podés realizar operaciones matemáticas, hasta tanto lo conviertas en un "number",
ejemplo, si tenés
var p = document.getElementById("edad").value;
antes de hacer p*3, necesitas
p = parseInt(p);
y luego la operación.
Esto se aplica al resto delos campos de tu form que vayas a usar para los cáculos

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 15/04/2013, 11:24
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Funcion y dato oculto

Gracias.
Y como le digo que tiene que obtener el dato de donde se muestra o debería mostrar (<p id="demo"></p>)?
  #6 (permalink)  
Antiguo 15/04/2013, 11:43
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Funcion y dato oculto

Cita:
Iniciado por jcsbaniela Ver Mensaje
Gracias.
Y como le digo que tiene que obtener el dato de donde se muestra o debería mostrar (<p id="demo"></p>)?
Vos el dato ya lo tenés, estoy tratando de darte un método genérico, la adpatación a tu script tenés que hacerla vos, fijate este ejemplo sencillo

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6. <script type="text/javascript">
  7. //<![CDATA[
  8. function calcula(){
  9. var p = document.getElementById('edad');
  10. p = parseInt(p.value);
  11. getotal(p);
  12. }
  13. function getotal(valor){
  14. document.getElementById('xxx').innerHTML = "tu edad x 3 es igual a " + (valor*3);
  15. }
  16. //]]>
  17. </head>
  18.     <input type="text" id="edad" />
  19. <input type="button" onclick="calcula()" value="calcular">
  20. </form>
  21. <p id="xxx"></p>
  22. </body>
  23. </html>
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 17/04/2013, 04:29
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Funcion y dato oculto

he echo unos cambios, pero creo que no me estoy dando cuenta del error, porque sigue saliendo mal. (además de no dar ocultado el dato que saldría en <p id="demo"></p> Copio el código. Muchas gracias.

Código:
<!DOCTYPE html>
<html>
<body>

<p>Cálculo del Gasto Energético Total</p>
<p>El gasto energético total es la cantidad absoluta de calorías que quema nuestro organismo a diario debido a diferentes actividades. Depende de tres factores: el gasto energético en reposo o metabolismo basal, la termogénesis inducida por la dieta, y la actividad física. Para mantener el peso estable es necesario que la energía que se ingiere en forma de alimentos sea equivalente a la que se gasta en mantener nuestras funciones vitales y nuestra actividad diaria.</p>
<form>
<table width="420" border="1">
  <tr>
    <td width="140">Sexo: M o F</td>
    <td width="147"><select name="sexo" id="sexo">    
       <option value="M" selected="selected">Masculino</option>
       <option value="F">Femenino</option>       
   </select></td>
    <td width="241" rowspan="5"><p id="gmbkcal"></p></td>
  </tr>
  <tr>
    <td>Peso (Kg):</td>
    <td><input id="peso" value="80" /></td>
    </tr>
  <tr>
    <td>Talla (m):</td>
    <td><input id="talla" value="1.85" /></td>
    </tr>
  <tr>
    <td>Edad:</td>
    <td><input type="text" id="edad" /></td>
    </tr>
  <tr>
    <td>Actividad:</td>
    <td> 
   <select name="actividad" id="actividad">    
       <option value="sedentaria" selected="selected">Sedentaria</option>
       <option value="ligera">Ligera</option>
       <option value="media">Media</option>
	   <option value="muy activa">Muy Activa</option>
       <option value="extrema">Extrema</option>
   </select></td>
    </tr>
</table>
<input type="button" onClick="calculo(); getotal();" value="Resultado" />
</form>

<p id="demo"></p>

<script>

function calculo(){
var z = document.getElementById("sexo").value;
var y = document.getElementById("talla").value;
var t = document.getElementById("peso").value;
var p = document.getElementById("edad").value;

var a=66.473;
var b=13.752;
var c=b*t;
var d=5.0033;
var e=100;
var f=y*e;
var g=d*f;
var h=6.755;
var i=h*p;
var j=655.0955;
var k=9.563;
var l=k*t;
var m=1.8496;
var o=m*f;
var q=4.6756;
var r=q*p;
var s=(a+c+g-i).toFixed(0);
var u=(j+l+o-r).toFixed(0);
var v = 0;

if (z=="M" || z=="m")
  {
  v=s;
  }
if (z=="F" || z=="f")
  {
  v=u;
  }
   
document.getElementById("demo").innerHTML=v;
}
</script>

<script> 
function getotal(){
var gasto=document.getElementById("demo");
gener = parseInt(gasto.value);
var act=document.getElementById("actividad").value;
var fija=1.1;
var sed=1;
var lig=1.2;
var med=1.4;
var muya=1.6;
var ext=1.8;
var gmb="";

if (act=="sedentaria")
  {
  gmb=gener*fija*sed
  }
if (act=="ligera")
  {
  gmb=gener*fija*lig
  }
if (act=="media")
  {
  gmb=gener*fija*med
  }
if (act=="muy activa")
  {
  gmb=gener*fija*muya
  }
if (act=="extrema")
  {
  gmb=gener*fija*ext
  }

document.getElementById("gmbkcal").innerHTML=gmb+" Kcal";
}
</script>

</body>
</html>
  #8 (permalink)  
Antiguo 17/04/2013, 05:41
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Funcion y dato oculto

Te recomiendo que revises lo que te indiqué, porque basicamente no estás modificando nada substancial.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 18/04/2013, 09:44
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Funcion y dato oculto

Hola y gracias,

Gracias emprear
ya he conseguido que se obtenga el resultado que quiero. Ahora solo necesito que no se muestre el resultado que aparece en <p id="demo"></p> (y que utilizo para obtener el resultado anterior). Pero si borro esa linea, no funciona.

Código:
<!DOCTYPE html>
<html>
<body>

<p>Cálculo del Gasto Energético Total</p>
<p>El gasto energético total es la cantidad absoluta de calorías que quema nuestro organismo a diario debido a diferentes actividades. Depende de tres factores: el gasto energético en reposo o metabolismo basal, la termogénesis inducida por la dieta, y la actividad física. Para mantener el peso estable es necesario que la energía que se ingiere en forma de alimentos sea equivalente a la que se gasta en mantener nuestras funciones vitales y nuestra actividad diaria.</p>
<form>
<table width="420" border="1">
  <tr>
    <td width="140">Sexo: M o F</td>
    <td width="147"><select name="sexo" id="sexo">    
       <option value="M" selected="selected">Masculino</option>
       <option value="F">Femenino</option>       
   </select></td>
    <td width="241" rowspan="5"><p id="gmbkcal"></p></td>
  </tr>
  <tr>
    <td>Peso (Kg):</td>
    <td><input id="peso" value="80" /></td>
    </tr>
  <tr>
    <td>Talla (m):</td>
    <td><input id="talla" value="1.85" /></td>
    </tr>
  <tr>
    <td>Edad:</td>
    <td><input type="text" id="edad" /></td>
    </tr>
  <tr>
    <td>Actividad:</td>
    <td> 
   <select name="actividad" id="actividad">    
       <option value="sedentaria" selected="selected">Sedentaria</option>
       <option value="ligera">Ligera</option>
       <option value="media">Media</option>
	   <option value="muy activa">Muy Activa</option>
       <option value="extrema">Extrema</option>
   </select></td>
    </tr>
</table>
<input type="button" onClick="calculo(); getotal();" value="Resultado" />
</form>

<p id="demo"></p>

<script>

function calculo(){
var z = document.getElementById("sexo").value;
var y = document.getElementById("talla").value;
var t = document.getElementById("peso").value;
var p = document.getElementById("edad").value;

var a=66.473;
var b=13.752;
var c=b*t;
var d=5.0033;
var e=100;
var f=y*e;
var g=d*f;
var h=6.755;
var i=h*p;
var j=655.0955;
var k=9.563;
var l=k*t;
var m=1.8496;
var o=m*f;
var q=4.6756;
var r=q*p;
var s=(a+c+g-i).toFixed(0);
var u=(j+l+o-r).toFixed(0);
var v = 0;

if (z=="M" || z=="m")
  {
  v=s;
  }
if (z=="F" || z=="f")
  {
  v=u;
  }
   
document.getElementById("demo").innerHTML=v;
}
</script>

<script> 
function getotal(){
var gasto=document.getElementById("demo");
gener = parseInt(gasto.textContent);
var act=document.getElementById("actividad").value;
var fija=1.1;
var sed=1;
var lig=1.2;
var med=1.4;
var muya=1.6;
var ext=1.8;
var gmb="";

if (act=="sedentaria")
  {
  gmb=gener*fija*sed
  }
if (act=="ligera")
  {
  gmb=gener*fija*lig
  }
if (act=="media")
  {
  gmb=gener*fija*med
  }
if (act=="muy activa")
  {
  gmb=gener*fija*muya
  }
if (act=="extrema")
  {
  gmb=gener*fija*ext
  }

document.getElementById("gmbkcal").innerHTML=gmb.toFixed(0)+" Kcal";
}
</script>

</body>
</html>
  #10 (permalink)  
Antiguo 18/04/2013, 12:57
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Funcion y dato oculto

Cita:
Iniciado por jcsbaniela Ver Mensaje
Hola y gracias,

Gracias emprear
ya he conseguido que se obtenga el resultado que quiero. Ahora solo necesito que no se muestre el resultado que aparece en <p id="demo"></p> (y que utilizo para obtener el resultado anterior). Pero si borro esa linea, no funciona.
Esto es lo que te pone el numero ahi, se elimina o se comenta
Código:
//document.getElementById("demo").innerHTML=v; 
Cosa que ya te respondí en el tercer punto de
http://www.forosdelweb.com/f13/funci...6/#post4410222

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #11 (permalink)  
Antiguo 19/04/2013, 02:44
 
Fecha de Ingreso: abril-2013
Mensajes: 8
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Funcion y dato oculto

Pues he decidido solucionar así el problema que tenía para ocultar los datos que no quería que se viesen en el navegador, pero que sí necesitaba para realizar los cálculos.
Muchas gracias.

Código:
<!DOCTYPE html>
<html>
<body>

<p>Cálculo de Objetivo Calórico Diario</p>
<p>El objetivo calórico diario es la cantidad de calorías que debes ingerir aproximadamente para conseguir tu objetivo, ya sea perder peso, como ganar volumen o simplemente mantener tu peso.</p>
<form>
<table width="420" border="1">
  <tr>
    <td width="140">Sexo: M o F</td>
    <td width="147"><select name="sexo" id="sexo">    
       <option value="M" selected="selected">Masculino</option>
       <option value="F">Femenino</option>       
   </select></td>
    <td width="241" rowspan="6"><p id="ocdkcal"></p></td>
  </tr>
  <tr>
    <td>Peso (Kg):</td>
    <td><input id="peso" value="80" /></td>
    </tr>
  <tr>
    <td>Talla (m):</td>
    <td><input id="talla" value="1.85" /></td>
    </tr>
  <tr>
    <td>Edad:</td>
    <td><input type="text" id="edad" /></td>
    </tr>
  <tr>
    <td>Actividad:</td>
    <td> 
   <select name="actividad" id="actividad">    
       <option value="sedentaria" selected="selected">Sedentaria</option>
       <option value="ligera">Ligera</option>
       <option value="media">Media</option>
	   <option value="muy activa">Muy Activa</option>
       <option value="extrema">Extrema</option>
   </select></td>
    </tr>
  <tr>
    <td>Objetivo:</td>
    <td><select name="objetivo" id="objetivo">    
       <option value="perder peso" selected="selected">Perder Peso</option>
       <option value="definicion">Definición</option>
       <option value="ganar peso">Ganar Peso</option>
	   <option value="volumen">Volumen</option>
       <option value="mantenimiento">Mantenimiento</option>
   </select></td></td>
    </tr>
</table>
<input type="button" onClick="calculo(); getotal(); ocdiario()" value="Resultado" />
</form>

<input style="visibility:hidden" id="demo" type="text"/>
<input style="visibility:hidden" id="gmbkcal" type="text"/>

<script>

function calculo(){
var z = document.getElementById("sexo").value;
var y = document.getElementById("talla").value;
var t = document.getElementById("peso").value;
var p = document.getElementById("edad").value;

var a=66.473;
var b=13.752;
var c=b*t;
var d=5.0033;
var e=100;
var f=y*e;
var g=d*f;
var h=6.755;
var i=h*p;
var j=655.0955;
var k=9.563;
var l=k*t;
var m=1.8496;
var o=m*f;
var q=4.6756;
var r=q*p;
var s=(a+c+g-i).toFixed(0);
var u=(j+l+o-r).toFixed(0);
var v = 0;

if (z=="M" || z=="m")
  {
  v=s;
  }
if (z=="F" || z=="f")
  {
  v=u;
  }
   
document.getElementById("demo").innerHTML=v;
}
</script>

<script> 
function getotal(){
var gasto=document.getElementById("demo");
gener = parseInt(gasto.textContent);
var act=document.getElementById("actividad").value;
var fija=1.1;
var sed=1;
var lig=1.2;
var med=1.4;
var muya=1.6;
var ext=1.8;
var gmb="";

if (act=="sedentaria")
  {
  gmb=gener*fija*sed
  }
if (act=="ligera")
  {
  gmb=gener*fija*lig
  }
if (act=="media")
  {
  gmb=gener*fija*med
  }
if (act=="muy activa")
  {
  gmb=gener*fija*muya
  }
if (act=="extrema")
  {
  gmb=gener*fija*ext
  }

document.getElementById("gmbkcal").innerHTML=gmb.toFixed(0);
}
</script>

<script>
function ocdiario(){
var gocd=document.getElementById("gmbkcal");
gcocd = parseInt(gocd.textContent);
var obj=document.getElementById("objetivo").value;
var diez=gcocd*0.1;
var quince=gcocd*0.15;
var ocd="";

if (obj=="perder peso")
  {
  ocd=gcocd-diez
  }
if (obj=="definicion")
  {
  ocd=gcocd-quince
  }
if (obj=="ganar peso")
  {
  ocd=gcocd+diez
  }
if (obj=="volumen")
  {
  ocd=gcocd+quince
  }
if (obj=="mantenimiento")
  {
  ocd=gcocd
  }

document.getElementById("ocdkcal").innerHTML=ocd.toFixed(0)+"Kcal";
}
</script>


</body>
</html>

Etiquetas: dato, funcion, html, input, oculto, select
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 18:41.