提问人:Oříšek 提问时间:11/12/2020 更新时间:11/12/2020 访问量:131
防止默认写信
Prevent default writting letter
问:
我想添加功能,当我点击“L”时会发生一些事情,但 L 不会被写入。
将函数映射到 L 字母工作正常,但即使我将 prevent default 添加到函数中,当我在其中设置光标时,L 字母也总是写入文本区域。请问这个问题能解决吗?
<html>
<body>
<textarea id="a">Test</textarea>
<textarea id="ab"></textarea>
<script>
function send(e) {
if (e.keyCode == 76) {
e.preventDefault();
ab.value += a.value;
a.value = "";
}
}
document.addEventListener('keyup', send);
</script>
</body>
</html>
答:
1赞
CertainPerformance
11/12/2020
#1
事件完成后,将插入按下的键。侦听器将在插入密钥后运行,因此调用事件不会阻止密钥出现。keypress
keyup
preventDefault
改为添加侦听器。keypress
function send(e) {
if (e.keyCode == 76) {
e.preventDefault();
ab.value += a.value;
a.value = "";
}
}
document.addEventListener('keypress', send);
<textarea id="a">Test</textarea>
<textarea id="ab"></textarea>
上一个:多个文本区域
下一个:Text区域,删除最后一段
评论