是否有通用的解决方案来确定使用 jQuery 或纯 Javascript 提交表单时使用的输入(例如文本、提交按钮等)?
我很清楚您可以绑定(bind)到提交按钮上的点击事件:
$('[type=submit]').on('click', function(event) {
event.preventDefault();
var $submit = $(this);
$submit.closest('form').trigger('submit', [$submit]);
});
我还知道您可以监听文本输入上的 Enter 键:
$('input').on('keypress', function(event) {
if (event.which == 13) {
event.preventDefault();
var $input = $(this);
$input.closest('form').trigger('submit', [$input]);
}
});
表单监听提交事件的位置:
$('#the_form').on('submit', function(event, $submit) {
// ...
});
但是是否有更通用的解决方案,不需要提交按钮和文本输入(以及任何 future 类型的输入)的特殊逻辑?
最佳答案
您是否考虑过查看哪个元素将焦点放在提交上?
$(document).ready(function() {
var target = null;
$('#the_form :input').focus(function() {
target = this;
alert(target);
});
$('#the_form').submit(function() {
alert(target);
});
});
关于javascript - 确定提交表单时的事件输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24248888/