Javascript 功能-->;许多不同的文本区域,但只有一个特定的id

Javascript 功能-->;许多不同的文本区域,但只有一个特定的id,javascript,html,function,textarea,Javascript,Html,Function,Textarea,我得到了以下函数: function add() { for (var i = 0; i < 49; i++) { var b = Math.floor(Math.random() * 50) + 1; document.getElementById("tt5").innerHTML += b + " "; } } 函数添加(){ 对于(变量i=0;i后,文本区域(“tt5”)中将输出50个不同的整数(从1到50) 但现在我有了两个额外的文本区域,具有相同的i

我得到了以下函数:

function add() {
    for (var i = 0; i < 49; i++) {
    var b = Math.floor(Math.random() * 50) + 1;
    document.getElementById("tt5").innerHTML += b + " ";
  }
}
函数添加(){
对于(变量i=0;i<49;i++){
VarB=数学地板(数学随机()*50)+1;
document.getElementById(“tt5”).innerHTML+=b+“”;
}
}
单击按钮-->后,文本区域(“tt5”)中将输出50个不同的整数(从1到50)
但现在我有了两个额外的文本区域,具有相同的id=“tt5”, 但这根本不会影响他们

<button onclick="add()">OK</button>
<textarea class="textarea2" name="t5" id="tt5"></textarea>
<textarea class="textarea3" name="t5" id="tt5"></textarea>
<textarea class="textarea4" name="t5" id="tt5"></textarea>
OK

我希望所有文本区域都用add-function()填充。

您的标记中有一些键向后。您正在使用唯一类和非唯一ID。应该是另一种方式:

<textarea class="textarea" name="t5" id="tt1"></textarea>
<textarea class="textarea" name="t5" id="tt2"></textarea>
<textarea class="textarea" name="t5" id="tt3"></textarea>

有一些更高级的方法可以跨多个元素应用某些内容,或将函数多次应用于数组,但由于您已经熟悉循环,这至少足以让您开始使用。还要注意,如果您提交表单,重复
name
值可能会产生意外的后果。发送到服务器的键/值对需要唯一的名称。

“具有相同的id”-这就是原因。
id
值必须是唯一的。浏览器无法识别非唯一的内容。也许你想用类来识别它们,但“document.getElementByCLASS?有这样的东西吗?当然有:)-omg,太棒了!!!thx^^解释得很好//太棒了
var textareas = document.document.getElementsByClassName("textarea");
for (var j = 0; j < textareas.length; j++) {
    textareas[j].innerHTML += b + " ";
}