具有两个功能的总数打印和计算

时间:2019-01-29 23:32:02

标签: javascript html5 forms function input

我是编程和javascript的初学者,我编写了一些小东西,其中有两个输入,用户在每个输入和程序上加上数字,并在其下给出总数

function printTotal(a,b){
// this function should take values as a parameter
}

function calculateTotal(a,b){
  var c=a+b;
// this function should calculate and return
}
document.getElementById("results").innerHTML = "Total= " +printTotal(a,b) ;
<div class="keski"> 
  <form id="f">
     <input type=text id="n1"><br>
     <input type=text id="n2"><br>
  </form>
       <button class="g" type="button" onclick="printTotal(f.n1.value, f.n2.value)">Count</button>
  <div id="results"></div>
</div>

我有两个应该互相帮助的功能(我已经注释了代码),我知道如何使用一个功能,但是不知道如何使用两个功能,我需要将功能相互放置(嵌套)?不好意思的英语不是我的母语。

3 个答案:

答案 0 :(得分:0)

function printTotal(a,b) {
  return calculateTotal(a,b);
}
function calculateTotal(a,b) {
  return a+b;
}

这是你的意思吗?

答案 1 :(得分:0)

您可以尝试进行此更改。基本上,我移动了为结果div赋值的代码,并在那里更改了方法调用。

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
<style>


</style>
</head>
<body>
<div class="keski"> 
  <form id="f">
     <input type=text id="n1"><br>
     <input type=text id="n2"><br>
  </form>
       <button class="g" type="button" onclick="printTotal(f.n1.value, f.n2.value)">Count</button>
<div id="results"></div>

   </div>
 

<script>
function printTotal(a,b){
document.getElementById("results").innerHTML = "Total= " +calculateTotal(a,b) ;
}
function calculateTotal(a,b){

var c = Number(a) + Number(b); //I use the 'Number' method here in order to avoid a and b being concatenated (treated like strings)
return c; //This return was missing so we can return value to calling method.
}
 


</script>
</body>
</html>

答案 2 :(得分:0)

calculateTotal函数中,您需要返回值。在printTotal中,您可以从2个输入中获取值,并调用calculateTotal以计算总计并打印出来。 尝试以下代码:

function printTotal(a, b){
  // this function should take values as a parameter

  //  print total
  document.getElementById("results").innerHTML = "Total= " + calculateTotal(a, b)
}

function calculateTotal(a,b){
  // need return total
  return Number(a) + Number(b);
// this function should calculate and return
}
<div class="keski"> 
  <form id="f">
     <input type=text id="n1"><br>
     <input type=text id="n2"><br>
  </form>
       <button class="g" type="button" onclick="printTotal(f.n1.value, f.n2.value)">Count</button>
  <div id="results"></div>
</div>