我想使用javascript将“Round 1”中的输入值复制到“Round 2”。我的“第二轮”值实际上是空的,但为了调试我已经给了它们值。
我认为我的 JS i2 = i1;
中的行需要增强,但不知道如何增强。例如,我尝试过使用“.innerHTML”,但没有成功。
Html:
<div id="round1">
<input type="text" name="partner1" value="name1" />
<input type="text" name="partner2" value="name2" />
</div>
<div id="round2">
<input type="text" readonly name="partner1" value="name3" />
<input type="text" readonly name="partner2" value="name4" />
</div>
JS:
var r1 = document.getElementById("round1");
var i1 = r1.getElementsByTagName("input")[0].value;
alert(i1);
var r2 = document.getElementById("round2");
var i2 = r2.getElementsByTagName("input")[1].value;
alert(i2);
i2 = i1;
最佳答案
当您最初设置 i1 和 i2 时,您按值提取了每个中的字符串。这很重要,因为 i1 和 i2 各自代表每个表单元素值的副本,而不是元素本身的值。
您可以跳过单独声明 i
变量,而是输入:
r2.getElementsByTagName("input")[1].value=r1.getElementsByTagName("input")[0].value;
当然,您可以完全跳过中间步骤并同时完成所有操作:
document.getElementById("round2").getElementsByTagName("input")[1].value = document.getElementById("round1").getElementsByTagName("input")[0].value;
关于javascript - 将此 id 中的 <input> 值复制到其他 id 中的 <input>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48309846/