我正在使用实现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