未知问题w / JavaScript随机数函数

时间:2012-08-28 22:43:45

标签: javascript html random numbers

var randNum = function(){
var max = document.getElementById('max').value;
var min = document.getElementById('min').value;
var reps = document.getElementById('reps').value;
var i;
for (i=0; i<reps; i++){
    var num = min + Math.floor(Math.random() * (max - min + 1)); //rand # 0-(max-1)
    addTXT(num);
}
};

此函数应该将带有ID“min”,“max”和“reps”的文本框中的数字输入,并使用它们来提供一些随机数。它不会向HTML文档写任何内容。 addTXT()函数应该将数字写入div,我知道它有效,因为我在此之前已经使用过它。任何帮助,将不胜感激。另外,我一直在用javascript工作不到一周,所以我很怀疑这个问题是非常明显的,我只是看不到它。

var addTXT = function(newText){
var outputDiv=document.getElementById("console");
var oldText = outputDiv.innerHTML;
outputDiv.innerHTML = newText + oldText;
};

2 个答案:

答案 0 :(得分:1)

将字符串值解析为parseInt()的整数:

var max = parseInt(document.getElementById('max').value);
var min = parseInt(document.getElementById('min').value);
var reps = parseInt(document.getElementById('reps').value);

<强> DEMO

答案 1 :(得分:0)

你在哪里得到这个问题?如果您不确定,请尝试在代码中的某些位置发出警报。

例如:

var randNum = function(){
alert('Function is triggered');
var max = document.getElementById('max').value;
var min = document.getElementById('min').value;
var reps = document.getElementById('reps').value;
var i;
for (i=0; i<reps; i++){
    var num = min + Math.floor(Math.random() * (max - min + 1)); //rand # 0-(max-1)
    alert(num);
    addTXT(num);
}
};

如果您的addTxt函数不起作用,请尝试jQuery方式

var randNum = function(){
alert('Function is triggered');
var max = document.getElementById('max').value;
var min = document.getElementById('min').value;
var reps = document.getElementById('reps').value;
var i;
for (i=0; i<reps; i++){
    var num = min + Math.floor(Math.random() * (max - min + 1)); //rand # 0-(max-1)
    alert(num);
    $('#console').append(num);
}
};