如何设置输入字段的值作为函数的参数?

时间:2018-01-13 14:21:24

标签: javascript function random

我尝试使用输入作为函数的参数。问题是,当我使用数字作为参数(例如:getRandomNumber(1,20))时,一切正常。但是当我使用下面所示的方法并输入min = 2和max = 5时,我得到数字0,1,2,3。如何强制它像getRandomNumber(1,20)一样工作?

我猜错了Math.floor(Math.random()*(max-min+1)+min)

<html> 
    <head>
    </head>
    <body>
      <input type = "button" value = "Get random number" onclick = "getRandomNumber(document.getElementById('min').value,document.getElementById('max').value)">
      <input type = "input" id = "min" placeholder = "min">
      <input type = "input" id = "max" placeholder = "max">
      <script>
      var p = document.createElement("p");
      document.body.appendChild(p);
    
        function getRandomNumber(min,max) {
          p.innerHTML = Math.floor(Math.random()*(max-min+1)+min);
        }
      </script>
    </body>
    </html>

2 个答案:

答案 0 :(得分:0)

应该如下:

Math.floor(Math.random() * (max - min + 1)) + min

并将输入转换为数字,例如使用 document.getElementById('min').valueAsNumber

答案 1 :(得分:0)

实际上document.getElementById给你一个字符串值,但是你需要一个int值,因为它不起作用。

您只需要在函数中重新接收值,然后执行该过程 MIN = value.parseInt()