Javascript 我真的不知道';我不知道问题出在哪里,表单重置不会';行不通
每当我尝试按下一个键(在本例中为m键)时,表单重置不起作用,一个m键或任何键始终保留在inputfield中,请帮助Javascript 我真的不知道';我不知道问题出在哪里,表单重置不会';行不通,javascript,forms,input-field,Javascript,Forms,Input Field,每当我尝试按下一个键(在本例中为m键)时,表单重置不起作用,一个m键或任何键始终保留在inputfield中,请帮助 const form = document.getElementById("form"); const input = form.querySelector("input"); form.addEventListener("submit", e => { e.preventDefault(); }); in
const form = document.getElementById("form");
const input = form.querySelector("input");
form.addEventListener("submit", e => {
e.preventDefault();
});
input.addEventListener("keydown", e => {
if(e.key === "m"){
console.log(`triggered`);
input.value = ""; // or form.reset()
console.log("form reseted")
}
})
发件人:
keydown和keyup事件提供一个代码,指示按下了哪个键,而keypress指示输入了哪个字符。例如,通过keydown和keypup将小写字母“a”报告为65,但通过keypress将其报告为97。所有事件都将大写字母“A”报告为65
您正在使用keydown事件尝试匹配字符,而您应该匹配keycode
“我的一个应用程序”中使用的工作代码示例(用于检测按enter键并清除聊天记录的输入字段):
正如您所注意到的,我正在使用“keyup”事件,将event.KeyCode返回的值与我要检测的键的代码(在本例中为13,“enter”的KeyCode)进行比较。我认为使用函数getElementById()比使用querySelector()更好。 它将很好地工作
var input = document.getElementById("user-input");
input.addEventListener("keyup", function(event) {
if(event.key == "m") {
event.preventDefault();
console.log("form reseted");
input.value="";
}
});
你收到日志消息了吗?请发一条。您可以使用使其可执行。
var input = document.getElementById("user-input");
input.addEventListener("keyup", function(event) {
if(event.key == "m") {
event.preventDefault();
console.log("form reseted");
input.value="";
}
});