将一个文本框的内容复制到另一个文本框

14

假设在文本框中输入了内容,是否可以在第二个文本框中保留相同的输入文本?如果可以,如何实现?

<html>
      <label>First</label>
      <input type="text" name="n1" id="n1">
      <label>Second</label>
      <input type="text" name="n1" id="n1"/>
</html>
7个回答

38
<script>
function sync()
{
  var n1 = document.getElementById('n1');
  var n2 = document.getElementById('n2');
  n2.value = n1.value;
}
</script>
<input type="text" name="n1" id="n1" onkeyup="sync()">
<input type="text" name="n2" id="n2"/>

简单,同时,完美! - Drew
你可以通过添加两个参数来泛化这个函数:input_field(通常作为this传递)和表示要复制到的元素的id的字符串。然后,您可以将n1变量替换为input_field - Chase Sandmann

8
更高效的方法是这样做: 现在看到这篇文章的人应该使用JavaScript的最佳实践。
<script>
function sync(textbox)
{
  document.getElementById('n2').value = textbox.value;
}
</script>
<input type="text" name="n1" id="n1" onkeyup="sync(this)">
<input type="text" name="n2" id="n2"/>

使用最佳实践,请点赞! - Danimal111

3
<html>
<script type="text/javascript">
function copy()
{
    var n1 = document.getElementById("n1");
    var n2 = document.getElementById("n2");
    n2.value = n1.value;
}
</script>
<label>First</label><input type="text" name="n1" id="n1">
<label>Second</label><input type="text" name="n2" id="n2"/>
<input type="button" value="copy" onClick="copy();" />
</html>

2

你有两个具有相同ID的文本框。ID应该是唯一的,所以你应该更改它。

要将一个文本框的值设置到另一个文本框中,只需简单调用getElementById()

document.getElementById("n1").value=  document.getElementById("n2").value;

(当然,假设您给第二个文本框一个id为n2
将其绑定到一个按钮点击事件以使其起作用。

2

这对我有用,且不使用JavaScript:

<form name="theform" action="something" method="something" />
 <input type="text" name="input1" onkeypress="document.theform.input2.value = this.value" />
 <input type="text" name="input2" />
</form>

I found the code here


2
从技术上讲,确实使用了Javascript,但是你说得对,并不需要导入单独的脚本才能做到这一点。 - Chase Sandmann

0
使用事件 "oninput"。这会提供更强大的行为。它还将在您复制粘贴时触发复制功能。


1
你能添加一个例子吗? - Moon Cheesez

0

您可以使用这种方式将一个文本框中的内容复制到另一个文本框中

function populateSecondTextBox() {
        document.getElementById('txtSecond').value = document.getElementById('txtFirst').value;
}
<label>Write Here :</label> 
<input type="text" id="txtFirst" onkeyup="populateSecondTextBox();" />
<br>
<label>Will be copied here :</label>
<input type="text" id="txtSecond" />


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接