Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTML/Javascript显示用户输入(刷新问题)_Javascript_Html_Forms_Validation_Refresh - Fatal编程技术网

HTML/Javascript显示用户输入(刷新问题)

HTML/Javascript显示用户输入(刷新问题),javascript,html,forms,validation,refresh,Javascript,Html,Forms,Validation,Refresh,我正在尝试获取用户在文本框中输入的内容,然后写入 将该输入复制到页面上的段落中,并停止页面刷新,以便他们可以复制该输入以供其他地方使用。(这将是一个相当长的形式,但这是我遇到的一个绊脚石 --为清晰起见进行了编辑-- 除了输入并按下外,一切似乎都很正常 提交时,输入显示良好几秒钟,然后 页面刷新。是否有任何方法可以修复/停止此问题 我曾尝试在显示中添加一个while循环,以便代码在显示时停止,但迄今为止没有成功 如果您有任何建议,我们将不胜感激,谢谢 我的代码 <html> <

我正在尝试获取用户在文本框中输入的内容,然后写入 将该输入复制到页面上的段落中,并停止页面刷新,以便他们可以复制该输入以供其他地方使用。(这将是一个相当长的形式,但这是我遇到的一个绊脚石
--为清晰起见进行了编辑--

除了输入并按下外,一切似乎都很正常 提交时,输入显示良好几秒钟,然后 页面刷新。是否有任何方法可以修复/停止此问题

我曾尝试在显示中添加一个while循环,以便代码在显示时停止,但迄今为止没有成功

如果您有任何建议,我们将不胜感激,谢谢

我的代码

<html>
<head>
<script type="text/javascript">
    function checkForm() {
        var input = document.myForm.username.value;
            document.write.getElementById("display").innerHTML=("Your username is" + " " + input);
            }


    </script>
</head>

<body>

<form name="myForm">
    <input type="text" name="username" value="Enter username" /><br/>
    <input type ="submit" value="Submit" 
    onClick="checkForm()" />

</form> 

<span id="display"><p> </p> </span>

</body>
</html>

函数检查表(){
var输入=document.myForm.username.value;
document.write.getElementById(“display”).innerHTML=(“您的用户名是“+”+input);
}


您的函数还需要将false返回到html表单:

function checkForm() {
    var input = document.myForm.username.value;
    document.write.getElementById("display").innerHTML=("Your username is" + " " + input);
    return false;
}

您可能还应该使用表单本身的事件,而不是单击submit按钮上的onclick

mate,在submit按钮上,默认情况下会提交导致页面刷新的表单,您需要在checkForm()末尾返回false;或者调用e.preventdefault()最后;

没有文档。请写入

document.write.getElementById(...
应该是

document.getElementById(...
您需要取消表单提交

document.forms[0].addEventListener("submit", function(evt) { evt.preventDefault(); });  
需要在文档准备就绪或窗口加载时附加

另一个选择是使用

<form onsubmit="return false">

我看你对编程很陌生

所以

如果您的提交标记位于表单标记中,它将转到表单操作属性路径,如果您没有操作属性,它将刷新;因为它将有“”路径,这意味着它是当前路径

例如,当您的代码如下所示

<form action="">
    <input type="submit">
</form>
#输出{
高度:50px;
边缘底部:25px;
边框:1件纯金;
}


Hi。谢谢你的反馈。我知道我遗漏了一些非常明显的东西。我尝试添加了返回值false,还删除了onclick并将表单更改为onsubmit,但它仍然存在刷新问题。我对此还是很陌生,我正在绞尽脑汁想弄清楚我遗漏了什么lol。好吧,表单提交了……这就是表单是的。非常感谢,这解决了问题。我意识到其他人也提到了返回false,我将其作为函数的一部分,但它似乎不想玩得很好。因此感谢大家的帮助和反馈!
<div>
    <input type="submit">
</div>