将一个文本框的值分配给另一个文本框

时间:2011-08-11 11:50:54

标签: jquery input textbox

已经看过类似问题的答案,但对于我的生活,我无法弄清楚我做错了什么。

我有两个文本框和一个按钮。当文本添加到第一个文本框并按下按钮时,我想将第一个文本框的值/文本应用于第二个文本框:

<html>
<head>
    <script type="text/javascript" src="jquery.js"></script>
    <script>
        $("#button").click(function() {
            var contents = $("#textbox").val();
            $("#container").val(contents);
        });
    </script>
</head>
<body>
    <input type="text" id="textbox" /> <input type="submit" id="button" value="Press This" />
    <br />
    <input type="text" id="container" />
</body>
</html>

3 个答案:

答案 0 :(得分:9)

您不是在等待DOM成为ready。你应该写一些类似的东西:

$(document).ready(function() {
    $("#button").click(function() {
        var contents = $("#textbox").val();
        $("#container").val(contents);
    });
});

答案 1 :(得分:4)

您的代码看起来不错。只需将其添加到$(document).ready(...)事件处理程序中,如下所示:

$(document).ready(function() {
    $("#button").click(function() {
        var contents = $("#textbox").val();
        $("#container").val(contents);
    });
});

您还可以稍微简化一下代码:

$(document).ready(function() {
    $("#button").click(function() {
        $("#container").val($("#textbox").val());
    });
});

看看the .ready() docs

答案 2 :(得分:2)

您应该等待document.ready事件的所有元素,并且可以简化您的jquery:

$(document).ready(function() {
    $("#button").click(function() {
        $("#container").val($("#textbox").val());
    });
});