一个我找不到解决方案的小问题(也许我在谷歌上搜索了错误的关键字):
情况:
我通过按 Enter 键 (13) 来阻止提交表单。 需要注意的是,表单将通过 AJAX 提交,因此不会重新加载页面。
阻止 Enter 键是一项简单的任务,而且有效:
$(document).on('keypress', 'input', function (e) {
if (e.which === 13) {
return false;
}
});
问题:
由于返回 false
,对下一个输入的关注不起作用。
如果我省略 return false
部分,那么表单自然会由 AJAX 提交并且 focus()
正在工作。
$(document).on('keypress', 'input', function (e) {
if (e.which === 13) {
// Simplifying the selector of the next input
// because this isn't the problem
$(this).next().focus();
return false;
}
});
关于如何解决这个问题有什么想法吗?
最佳答案
尝试在 if
条件中调用一个函数,并在该函数中添加 $(this).next().focus();
。在callback
函数中,您可以返回 false
以阻止表单提交。
关于javascript - 当阻止 Enter 键提交 AJAX 表单时,专注于下一个输入不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37085734/