将函数返回值填充到<input />元素中

时间:2014-10-04 15:27:36

标签: javascript html function input onclick

我正在为我的网站撰写聊天页面。我已成功设法getmyFunction()向用户询问他们的名字,只需说出欢迎'用户名'即可。问题是我想在聊天本身的名称输入框中使用相同的名称,而不是用户每次希望编写消息时都必须输入他们的名字。我使用onclick=提示用户输入他们的名字,但是我无法在名称框中显示该名称。

<form action='submit.php' method='post' name='form'>

Your name:<br><p>Click the button to demonstrate the prompt box.</p>

<button onclick="myFunction()">Try it</button>

<p id="demo"></p>

<script>
function myFunction() {
var person = prompt("Please enter your name", "Harry Potter");
if (person != null) {
    document.getElementById("demo").innerHTML =
    "Hello " + person + "! How are you today?";
}
}
</script>
Your Name: <br>
<input type='text' name='name' size='20' onclick='myFunction()'><br>

Your message:<br>

<textarea name='message' cols='40' rows='2'></textarea><br>

编辑:我发现虽然javascript代码在submit.php中,但是submit.php根本不显示:/

1 个答案:

答案 0 :(得分:0)

你应该澄清会发生什么,应该发生什么,以及你希望它发生在哪里。根据你所说的,我认为你想要将输入的值更改为用户通过提示对话框输入的名称。在这种情况下,你可以这样做:

<script>
    function myFunction() {
        var person = prompt("Please enter your name", "Harry Potter");
        if (person) {
            document.getElementById("demo").innerHTML = "Hello " + person + "! How are you today?";
            document.getElementById("name").value = person;
        }
    }
</script>

顺便说一下,这不是问题的一部分,但是当你有一个用于输入用户名的输入字段时,通过提示对话框询问它是没有意义的。您可以要求用户通过输入字段输入它,无论何时更改(onchanged元素的<input>属性),您都可以使用脚本处理它。