سلام دوستان..
برای ارسال فایل از طریق Ajax کد زیر رو دارم:
var obj = new FileReader();
obj.onload = function(data){
var formData = new FormData();
event.preventDefault();
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
url:"{{ route('FileUploadAjax')}}",
method:"POST",
data: formData,
dataType: 'JSON',
contentType: false,
cache: false,
processData: false,
success:function(data){
alert('success');
}
})
}
به اینصورته که به محض اینکه فایل رو توسط file input انتخاب کردم قراره ajax عمل میکنه و روی هیچ دکمه submit یا چیز دیگه ای کلیک نمیکنم
داخل کنترلر فایل رو ندارم..
انگار نمیفرسته..
کدای مربوط به فایل رو که از توی کنترلر پاک میکنم همه چی اوکیه و ajax درست کار میکنه ولی به محض اینکه کدای مربوط به فایل رو میذارم ارور میده.. مثل getClientOriginalExtension
حتی تست کردم بقیه چیزای داخل فرم رو هم null برمیگردونه..
مثلا فیلد name که مقدار هم داره. انگار فرم رو نمیفرسته به کنترلرم
ممنون میشم راهنماییم کنید کد رو اصلاح کنم
سلام من از این استفاده میکنم بدون هیچ مشکلی کار میکنه
$.ajax({
method:"get",
url:"{{route('admin.setting.faq.status')}}",
data:{id:id},
success:function(data){
//console.log('success');
}
})
درضمن قدم به قدم از فراخونی تابع گرفته تا ... console.log بررسی کن
فک نکنم برای متد پست هم تفاوتی وجود داشته باشه
سلام
این مورد رو تست کنید
https://www.webslesson.info/2018/09/upload-image-in-laravel-using-ajax.html
اسم و آی دی file input هست myFile..
چجوری به ajax بگم که دیتای این فایل اینپوت رو به همراه درخواست بفرست به کنترلر؟
درست شد..
این کدا رو بعنوان دیتای Ajax اضافه کردم درست شد..
var UploadFormData = new FormData();
var files = $('#myFile')[0].files[0];
UploadFormData .append('myFile',files);
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟