打开 JavaScript 控制台,将光标放在文本框中,然后按 Enter 键。为什么调用函数“baz”?应该如何抑制?
function foo() {
console.log('foo');
}
function bar() {
console.log('bar');
}
function baz() {
console.log('baz');
}
function blee() {
console.log('blee');
}
<form onsubmit="foo()" action="javascript:blee()">
<input type="text" />
<button onclick="baz()">baz</button>
<button onclick="bar()">bar</button>
<input type="submit" />
</form>
最佳答案
浏览器认为输入后的按钮是提交按钮。如果您要将 baz 按钮与 bar 按钮切换,它将调用 bar() 函数。
您可以通过向两个按钮添加“type="button””来解决此问题。
关于javascript - 为什么在文本框中按 Enter 键会单击第一个按钮并提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29190396/