Javascript Dropzone.js始终自动上载文件。Can';t在dropzone#id-Laravel-Voyager-dropzone.js上设置选项

Javascript Dropzone.js始终自动上载文件。Can';t在dropzone#id-Laravel-Voyager-dropzone.js上设置选项,javascript,laravel,laravel-5.5,dropzone.js,voyager,Javascript,Laravel,Laravel 5.5,Dropzone.js,Voyager,我想在我的web应用程序中创建一个dropzone,用于上传图像,并使用ImageMagick对其进行操作。 我的dropzone始终自动上载所有图像,并在dropzone中的图像预览中显示“opject Object”错误。 服务器上的上载可以正常工作,但我想将Dropzone.options.myAwesomeDropzone添加到我的Dropzone,以便在提交按钮时上载图像,因为我还想在上载时从表单发送数据 我是如何在视图中实现它的: $ <div class="dropzo

我想在我的web应用程序中创建一个dropzone,用于上传图像,并使用ImageMagick对其进行操作。 我的dropzone始终自动上载所有图像,并在dropzone中的图像预览中显示“opject Object”错误。 服务器上的上载可以正常工作,但我想将Dropzone.options.myAwesomeDropzone添加到我的Dropzone,以便在提交按钮时上载图像,因为我还想在上载时从表单发送数据

我是如何在视图中实现它的:

$    <div class="dropzone" id="my-awesome-dropzone">
public function upload()
    {
        $input = Input::all();

        $rules = array(
            'file' => 'image|max:3000',
        );

        $validation = Validator::make($input, $rules);

        if ($validation->fails()) {
            return Response::make($validation->errors->first(), 400);
        }

        $destinationPath = 'uploads'; // upload path
        $extension = Input::file('file')->getClientOriginalExtension(); // getting file extension
        $fileName = rand(11111, 99999) . '.' . $extension; // renameing image
        $upload_success = Input::file('file')->move($destinationPath, $fileName); // uploading file to given path

        if ($upload_success) {
            return Response::json('success', 200);
        } else {
            return Response::json('error', 400);
        }


}
我希望有人能帮我,我在网上搜索了几个小时,但找不到解决问题的方法。 有数百种解决方案对每个人都有效,但我除外


致以最诚挚的问候

如果您查看dropzone的文档,它会告诉您,在配置中,您必须将prop
autoProcessQueue
设置为false,然后调用
myDropzone.processQueue()

因此,请尝试以下外观:

var myDropzone;
var token = "{{ csrf_token() }}";
var baseUrl = "{{ url('/') }}";
$(document).ready(function(){
      myDropzone = new Dropzone("div#my-awesome-dropzone", {
      url: baseUrl + "/upload",
      params: {
         _token: token
         // other fields, here you can also pass a function and have the function return the fields
         name: $("#name").val()
      },
      autoProcessQueue:false,
   });
})

$("#yourButtonId",function(e){
   e.preventDefault();
   myDropzone.processQueue();
});

谢谢,这对我很有效。请看我上面的回答:)谢谢不要这样回答,我相信你应该编辑这篇文章。仍然很高兴有hlpedok抱歉,stackoverflow的第一个用法:)我没有看到小链接
var myDropzone;
var token = "{{ csrf_token() }}";
var baseUrl = "{{ url('/') }}";
$(document).ready(function(){
      myDropzone = new Dropzone("div#my-awesome-dropzone", {
      url: baseUrl + "/upload",
      params: {
         _token: token
         // other fields, here you can also pass a function and have the function return the fields
         name: $("#name").val()
      },
      autoProcessQueue:false,
   });
})

$("#yourButtonId",function(e){
   e.preventDefault();
   myDropzone.processQueue();
});