0

我是一名学习 JavaScript 的学生,我正在尝试输出此函数的结果:

function randInt(lower, upper) {
   var size = randInt(1,10); 
   return Math.floor(lower + size*Math.random());
}

这是我试图将输出放入的 HTML:

<h1>Random Tip<br />
<script type="text/javascript">
var tipNum = Math.floor(lower + size*Math.random());
document.write("<p>" +randInt(lower, uppers)+ "</p>");
</script>

我完全把这个搞砸了!!请提出建议!

4

4 回答 4

2

编辑:我不知道只标记一个问题 Javascript 意味着你不应该在答案中包含 JQuery - 你生活和学习

所以没有 jQuery - 我认为这就是你想要的(将随机数输出到 HTML 元素中)

    <h1>Random Tip<br /></h1>
    <div id="result"></div>
    <script>
      function randInt(min, max) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
      }
      var randomNumber = randInt(10, 25);
      var target = document.getElementById('result');
      target.innerHTML = "<p>" + randomNumber + "</p>";
      });
    </script>

更新的小提琴可以在这里找到

于 2013-09-08T19:00:56.487 回答
1

您需要在页面加载时调用该函数。

以下肯定会起作用:

   <html>
<head>
<script>
function randInt(lower, upper) {
   var size = upper - lower;
   return Math.floor(lower + size*Math.random());
}

function callOnLoad() {
var lower = 1;
var uppers = 10;
document.write("<p>" +randInt(lower, uppers)+ "</p>");
}

</script>
</head>
<body onload="callOnLoad()">
</body>
</html>
于 2013-09-08T18:55:14.640 回答
0

根据您的描述,您似乎正在尝试在每次点击时生成一个随机数。

尝试这个

<h1 id='op' onclick="randInt(1,10)">Random Tip</h1><br />
  <script>
  function randInt(lower, upper) {
document.getElementById('op').innerHTML=(Math.floor(Math.random()*(upper-lower)));  //This will write the result in your heading tag.
    }
 </script>

演示

于 2013-09-08T18:52:20.797 回答
0

这段代码是递归的:

<script>
function randInt(lower, upper) {
    var size = randInt(1,10); 
    return Math.floor(lower + size*Math.random());       
}
</script>

也许您正在寻找类似的东西:

<script>
function randInt(lower, upper) {
     return Math.floor(Math.random() * (upper - lower + 1)) + lower;
}
</script>

<h1>Random Tip<br />
<script type="text/javascript">
    // You cannot call randInt(lower, upper) without defining those variables
    document.write("<p>" +randInt(0, 10)+ "</p>");
</script>
于 2013-09-08T19:01:20.440 回答