2016-07-19 122 views
1

所以这是一个每小时计算订单的计时器。当我硬编码订单时,一切都按我想要的方式工作。但我似乎无法确定如何获得用户输入来设置订单数量。这是我一直在尝试,它不工作。有任何想法吗??将用户输入存储为变量

<html> 
<body> 

    <p><strong>Time Elapsed:</strong><span id="time-elapsed"</span></p> 

    <button onclick="openFunc()">Start Time</button> 

    <button onclick="myStopFunction()">Stop time</button><br><br> 

    <input type="text" id="orderAmount"><br>Enter Number of Orders</input><br><br> 

    <button onclick="calculate(timeElapsed, orders)">Calculate...</button> 


    <script> 
     var timeElapsed = 0; 
     var myVar = ''; 
     var average = 0; 
     var orders = document.getElementById("orderAmount").innerHTML += orders; 


     function openFunc(){ 
      start(); 

     } 

     function calculate(time, _orders) { 
      var avg = _orders/(time/_orders); 
      if (avg<1){ 
       avg = 1; 
      } 
      document.write(avg + " Bags per Hour"); 
     } 

     function start() { 
      if (myVar != "") { 
       console.log('timer is running'); 
       return; 
      } 
      clearInterval(myVar); 
      myVar = setInterval(function(){ 
        myTimer() 
      }, 1000); 
     } 


      function myTimer() { 
       timeElapsed += 1; 
       document.getElementById("time-elapsed").innerHTML = formatTime(timeElapsed); 
     } 

      function formatTime(time) { 
      var hours = formatNumber(Math.floor(time/3600)) 
      var minutes = formatNumber(Math.floor(time/60));  
      var seconds = formatNumber(time%60);  

      //console.log('minutes: ', minutes); 
      //console.log('seconds: ', seconds); 
      return hours + ":" + minutes + ":" + seconds 
     } 

      function formatNumber(number) { 
      if (number < 10) { 
       return 0 + '' + number 
      } 
      return number 
     } 

      function myStopFunction() { 
       clearInterval(myVar); 
       myVar = ""; 
     } 
     </script> 
    </body> 
</html> 
+0

'这里是我有这么far'代码 - 做任何事情在代码工作的? –

+0

你告诉我们你的代码应该做些什么,但这里没有问题的陈述或问题。可能是审查的好时机[问] – charlietfl

+0

尝试使用对象的'.value'。例如:如果您使用HTML选项:'var orders = document.getElementById(id).value'。也许你想要一个简单的入口,所以我会使用:'var order = + prompt(“set Order amount”,“”);'提示前面的加号确保如果你想让某人输入一个数字,那么代码将会将它看作一个数字而不是字符串或文本。 – Brendan

回答

1

这是你如何从文本字段获取用户输入与orderAmount ID:

var orders = document.getElementById("orderAmount").value; 
+0

啊哈谢谢你们摇滚! –