Javascript 如何在onsubmit事件中检查请求类型(ajax或no)?

Javascript 如何在onsubmit事件中检查请求类型(ajax或no)?,javascript,ajax,Javascript,Ajax,在我的申请表中,有时直接提交,有时由 .ajaxForm()来自jquery插件。 我想知道表格是如何提交的。我能知道这件事吗 $(document).on('submit', 'form', function(e) { if (e.method_to_check_is request_was_ajax) // rest of code here }); 在几句评论之后,我不得不编辑这个问题。您的事件绑定到您的提交事件,而不是现在的ajax调用 但是,如果您想执行检查以查看此

在我的申请表中,有时直接提交,有时由 .ajaxForm()来自jquery插件。 我想知道表格是如何提交的。我能知道这件事吗

$(document).on('submit', 'form', function(e) {
   if (e.method_to_check_is request_was_ajax)  
   // rest of code here
 });

在几句评论之后,我不得不编辑这个问题。

您的事件绑定到您的提交事件,而不是现在的ajax调用

但是,如果您想执行检查以查看此提交的功能,您可以:

在标记中包含以下内容:

<form id="my-id" class="my-forms" method="GET">
 <button type="submit"></button>
</form>

当然,这个例子被设计成
这个方法。
$(“#我的id”)
上的方法总是“GET”。但是,您可以改为将选择器更改为
$('.my forms')
,以使用
.my forms
类在所有元素中拦截此事件。

此时,事件绑定到提交事件,而不是ajax调用

但是,如果您想执行检查以查看此提交的功能,您可以:

在标记中包含以下内容:

<form id="my-id" class="my-forms" method="GET">
 <button type="submit"></button>
</form>

当然,这个例子被设计成
这个方法。
$(“#我的id”)
上的方法总是“GET”。但是,您可以改为将选择器更改为
$('.my forms')
,以使用
.my forms
类在所有元素中截获此事件。

根据您的描述,它不会是ajax请求,因为您正在('submit',function(){})上使用
,它将是对服务器的html请求

如果您仍然想检查请求是GET还是POST的类型,可以检查表单的
方法
属性

$(document).on('submit', 'form', function(e) {
   e.preventDefault();
   var method = this.method;
   if(method=='GET')
   //do something
   if(method=='POST')
   //do something
 });

根据您的描述,这不是ajax请求,因为您正在('submit',function(){})上使用
,它将是对服务器的html请求

如果您仍然想检查请求是GET还是POST的类型,可以检查表单的
方法
属性

$(document).on('submit', 'form', function(e) {
   e.preventDefault();
   var method = this.method;
   if(method=='GET')
   //do something
   if(method=='POST')
   //do something
 });

有了onsubmit,Ajax会怎么样?Ajax是XMLHttpRequest对象,它不会触发表单的提交。我不理解你的问题,你必须知道你在做什么样的请求,对吗?例如,如果表单是从jQuery提交的,那么您必须知道表单是从何处完成的。在浏览器中,Ajax调用不会触发提交处理程序。在onsubmit中如何使用Ajax?Ajax是XMLHttpRequest对象,它不会触发表单的提交。我不理解你的问题,你必须知道你在做什么样的请求,对吗?如果表单是从jQuery提交的(例如),您必须知道表单是从何处完成的。在浏览器中,Ajax调用不会触发提交处理程序。是的,我知道,但这不是我问的具体问题,但感谢您的解释是的,我知道,但这不是我问的具体问题,但感谢您的解释