使用html和javascript的随机数生成器没有给出正确的随机数作为答案

时间:2015-06-08 19:07:47

标签: javascript html

一周前我开始学习JavaScript,现在我遇到了一个问题。我的代码没有返回正确的随机数作为答案。请查看我的代码并帮助我。感谢。

    function calc() {
      var min = document.getElementById('min').value;
      var max = document.getElementById('max').value;
      var x = Math.floor(Math.random() * (max - min) + max);
      document.getElementById('random').innerHTML = x;
    }
<table border='1px' color='black'>
  <tr>
    <td>min</td>
    <td>
      <input type='text' id='min' />
    </td>
  </tr>
  <tr>
    <td>max</td>
    <td>
      <input type='text' id='max' />
    </td>
  </tr>
  <tr>
    <td>
      <input type='button' onClick='calc()' value='generate' />
    </td>
    <td>
      <p id='random'>0</p>
    </td>
  </tr>
</table>

2 个答案:

答案 0 :(得分:3)

在开始计算之前,您必须在minmax值上使用parseInt(string,10),否则... + max会连接字符串而不是添加数字。

至于算术,try var x = Math.floor(Math.random() * (max - min + 1) + min) instead.

&#13;
&#13;
    function calc() {
      var min = parseInt(document.getElementById('min').value,10);
      var max = parseInt(document.getElementById('max').value,10);
      var x = Math.floor(Math.random() * (max - min + 1) + min);
      document.getElementById('random').innerHTML = x;
    }
&#13;
<table border='1px' color='black'>
  <tr>
    <td>min</td>
    <td>
      <input type='text' id='min' />
    </td>
  </tr>
  <tr>
    <td>max</td>
    <td>
      <input type='text' id='max' />
    </td>
  </tr>
  <tr>
    <td>
      <input type='button' onClick='calc()' value='generate' />
    </td>
    <td>
      <p id='random'>0</p>
    </td>
  </tr>
</table>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

像这样更改你的javascript代码

.fixed-button {
    position: fixed;
    bottom: 0;
    right: 0; 
}

<div class="row fixed-button" id="printSelectedRecords">
            <div class="col-md-12">
                <span class="col-md-3">
                    <a class="btn btn-default btn-primary" ng-click="showSelectedRecords()" ng-disabled="selectedItems.length==0">
                        Continue to Print
                    </a>
                </span>
            </div>
        </div>