1
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;
};
4

2 回答 2

1

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

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

演示

于 2012-08-28T22:47:33.507 回答
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);
}
};
于 2012-08-28T22:52:41.593 回答