Laravelを実装するOctoberCMSを使用しています。
OctoberCMS には、jQuery AJAX に基づく 1 つの AJAX フレームワークがあります。
この
request()
メソッドは、フォーム内またはフォーム要素上の任意の要素で使用できます。メソッドがフォーム内の要素で使用されると、フォームに転送されます。このメソッドに
request()
は、1 つの必須パラメーター (AJAX ハンドラー名) があります。例:
<form onsubmit="$(this).request('onProcess'); return false;">
request() メソッドの 2 番目の属性は options オブジェクトです。jQuery AJAX 関数と互換性のある任意のオプションとメソッドを使用できます。 もっと見る.
よし、1 つのファイルを含むフォーム データを送信しようとしています (もちろん、フォームには があります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