【发布时间】:2019-01-15 16:59:20
【问题描述】:
考虑以下 HTML 代码:
<form>
<div>
<input type ="text" id="myInput"/>
</div>
</form>
我希望当用户写一些文本并按下 ENTER 键时,输入值将变为单词“Hello”。
为此,我添加了以下 Java 脚本代码:
<script>
var input = document.getElementById("myInput");
input.addEventListener("keyup", function(event) {
event.preventDefault();
if (event.keyCode === 13) {
input.value ="Hello";
}
});
</script>
不幸的是,这不起作用,因为当我编写文本并按 ENTER 键时,文本消失了(而不是显示世界“Hello”)。
在深入研究了这个问题后,我发现如果我从 HTML 代码中删除“表单”标签,那么它就可以正常工作了。
我有两个问题:
1) 为什么会这样?
2) 如何在不去掉“form”标签的情况下解决这个问题?
任何帮助将不胜感激!
【问题讨论】:
-
"如何在不删除“form”标签的情况下解决这个问题?" - 为什么?您不希望加载新页面,那么为什么首先需要表单?
标签: javascript html forms input