2014-10-03 8 views
0

안녕하세요 여러분, 호출시 claclBMI() 함수로 생성 된 값을 인쇄하는 JavaScipt 함수를 만들려고합니다. 첫 번째 함수를 사용하면 BMI 계산이 정확하다고 느낍니다. 거기에 어쨌든 버튼을 calcBMI 함수의 결과를 인쇄 할 수 있습니까?자바 스크립트 버튼으로 값 인쇄

<!doctype html> 
 
<html lang="en"> 
 
<head> 
 
<meta charset="utf-8"> 
 
<title>Body Mass Index</title> 
 
</head> 
 
<body> 
 
<table width="80%" border="0"> 
 
    <tr> 
 
    <th>Weight in Pounds</th> 
 
    <th>Height in Inches</th> 
 
    <th>Body Mass Index</th> 
 
    </tr> 
 
    <tr> 
 
    <td><input id="box1" oninput="number" type="text" /></td> 
 
    <td><input id="box2" oninput="number" type="text" /></td> 
 
    <td><button onclick="printBMI()">Calculate BMI</button></td> 
 
    </tr> 
 
</table> 
 
<p id="calcBMI"></p> 
 
<script> 
 
\t function calcBMI() 
 
{ 
 
\t \t var myBox1 = document.getElementById('box1').value; \t 
 
\t \t var myBox2 = document.getElementById('box2').value; 
 
\t \t var BMI = document.getElementById('BMI'); \t 
 
\t \t var myResult = (myBox1 * 703)/(myBox2 * myBox2); 
 
\t \t BMI.value = "parseInt(myResult)"; 
 
} 
 
\t function printBMI() 
 
{ 
 
    document.write (myResult); 
 
} 
 
</script> 
 
</body> 
 
</html>
당신은 그들이 문자열로 검색하는 경우, 그들에 계산을 실행하기 전에에서는 parseInt() 할 필요가

+0

'BMI.value = "parseInt (myResult)";를'BMI.value = myResult;'로 바꿀 수 있습니까? 또한 버튼에 대한'onclick'은'calcBMI()'일 수도 있습니다. –

+0

'document.getElementById ('BMI');는'document.getElementById ('calcBMI') 여야 함' –

+0

'BMI.value = ...'는'BMI.textContent = ... '이어야합니다. –

답변

0

일부 의견 : ID를 가진 요소가 없기 때문에

  • calcBMI
  • 아무것도 발견하지 값을 반환하지 않습니다 BMI
  • BMI.value 폭발, BMI는 따옴표없이
  • parseInt(someStringWithDigits) 정의되지 않은 때문에 함수이지만, 당신이 가지고있는 것은 문자열 일 뿐이며, 아무것도하지 않습니다.
  • 를 사용합니다.하지만 printBMI 함수는 다른 함수에서 선언 된 변수를 볼 수 없습니다.

¿ 일종의 과제입니까? 그렇다면 적용 할 지식이 무엇인지 알면 좋을 것입니다.

당신의 문제들을 해결하기 위해

:

  • document.getElementById('box1'); 당신이 다른 곳에서 결과를 할당하는 좋은 이유가없는 한, 값을 반환해야합니다 당신에게 첫 번째 입력
  • calcBMI을 줄 것이다,하지만에서 내 관점에서 볼 때 가치를 반환하고 다른 부수적 인 효과를 내지 않는 것이 좋습니다.
  • 이렇게하면 document.write(calcBMI())이 페이지에서 everithing을 지우고 결과를 대신 표시합니다. 결과를 어딘가에 구체화하고 싶을 수도 있지만, 좋은 시작이라고 생각합니다.
0

: 또한

function calcBMI() { 
    var myBox1 = document.getElementById('box1').value; 
    var myBox2 = document.getElementById('box2').value; 
    var BMI = document.getElementById('BMI'); 
    var myResult = (parseInt(myBox1) * 703)/(parseInt(myBox2) * parseInt(myBox2)); 
    BMI.value = myResult; 
} 

당신이 할 결과를 원하는 경우 단추 텍스트에 다음과 같이 표시됩니다.

BMI.innerHTML = myResult; 

lso, printBMI() 함수를 호출하면 document.write()는 페이지의 모든 내용을 지 웁니다.

+1

시작입니다. 하지만 다른 많은 문제가 있습니다. –

관련 문제