0

我正在使用实现Laravel的OctoberCMS

OctoberCMS 有一个基于 jQuery AJAX 的 AJAX 框架。

request()方法可用于表单内部或表单元素上的任何元素。当该方法与表单内的元素一起使用时,它会被转发到表单。

request()方法有一个必需的参数 - AJAX 处理程序名称。例子:

<form onsubmit="$(this).request('onProcess'); return false;">

request() 方法的第二个属性是选项对象。您可以使用任何与 jQuery AJAX 功能兼容的选项和方法查看更多

很好,我正在尝试发送包含一个文件的表单数据(当然我的表单有enctype="multipart/form-data")。因此,request()方法如下所示:

var 
   myForm = document.querySelector('#myForm'),

myForm.addEventListener('submit', function ( event ) {
  event.preventDefault();
  myFormData = new FormData( this );
  $( this ).request( 'onHandler', {
    data: myFormData,
    contentType: false,
    // this would make work
    proccessData: false,
    success: function ( response ) {
      // do something
    }, 
    error: function ( jqXHR ) {
      // do something    
    },
    complete: function () {
      // do something
    }
  });
});

当尝试提交表单时,我总是有这个日志: Uncaught TypeError: Illegal invocation

4

0 回答 0