我有一个带有文本框的表单,然后是另一个带有三个文本框的表单。
当我单击按钮时,我在第一个文本框中输入的文本 (id="logoName") 应该在其他三个文本框 (ids v1 - v3) 中可见。我尝试了以下操作,但是当我单击按钮时,第一个框中的文本消失而不是显示在其他框中...我做错了什么?非常感谢你的帮助!!!

JS

var logoName = document.getElementById("logoName");
var v1 = document.getElementById("v1");
var v2 = document.getElementById("v2");
var v3 = document.getElementById("v3");
var button = document.getElementById("button");

function sync() {
    v1.value = logoName.value;
    v2.value = logoName.value;
    v3.value = logoName.value;
}
button.onclick = sync();

CSS
p {
        font-size: 2em;
        float: left;
        margin-right: 2em;
    }
    .clear {
        clear: both;
    }
    .overview {
        margin-top: 2em;
    }
    input[type="text"] {
        font-size: 2em;
        width: 200px;
    }

HTML
<form>
    <label>Logo-Name</label>
    <input id="logoName" type="text"/>
    <button id="button">synchronise</button>
</form>

<form class="overview">
    <input id="v1" type="text" /> <input id="v2" type="text" /> <input id="v3" type="text" />
</form>

最佳答案

您在那里遇到了 2 个基本错误:

1- 您没有阻止提交按钮的默认操作,并且

2-您没有将 sync 函数正确分配给按钮

像这样:

button.onclick = function() {sync();return false;}

关于javascript - 同步文本框(在表单中输入),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30470146/

10-09 21:22
查看更多