我试图在onsubmit上调用一个简单的函数。我尝试使用onsubmit以及jQuery侦听器。我的问题是,当用户按下Enter键时,他被重定向到mysite.com?

<form id="teleport">
<input id="tInput" type="text" value="Type a location" />
<input type="button" id="tSubmit" value="Submit"/>
</form>

$("#teleport").submit(function () {
teleport(document.getElementById('tInput').value);
});


提交时如何防止任何事情发生?另外.submit()仅检测回车键,我该如何监听回车键和单击提交按钮?

最佳答案

您需要阻止表单的默认操作。您可以使用event.preventDefault()来做到这一点:

$("#teleport").submit(function (e) {
    e.preventDefault();
    teleport(document.getElementById('tInput').value);
});


另外,您可以在return false事件处理程序内使用submit获得相同的效果。

使按钮也提交表单的最简单方法是将其类型更改为submit

<input type="submit" id="tSubmit" value="Submit" />

或者,您可以将click事件处理程序附加到当前按钮,并触发表单的submit事件。

07-28 02:24
查看更多