2015-04-08 22 views
10

Tôi sử dụng jQuery để làm việc với dropzone. ví dụ.Nhận đối tượng Dropzone/đối tượng sử dụng jQuery

$("#mydropzone").dropzone({ /*options*/ }); 

tôi cần để có được những ví dụ dropZone vì vậy tôi có thể gọi phương pháp này:

myDropzone.processQueue() 

Làm thế nào tôi có thể đạt được điều này? Có thể không?

nói cách khác, làm thế nào tôi có thể khởi tạo vùng thả sử dụng

$("#mydropzone").dropzone({ url: "/file/post" }); 

nhưng đồng thời có được sự thể hiện của đối tượng như nếu tôi khởi nó sử dụng:

var myDropzone = new Dropzone("#mydropzone", { url: "/file/post"}); 

vì vậy tôi có thể gọi:

myDropzone.processQueue() 

Cảm ơn bạn rất nhiều.

+0

Bạn có thể xem một phần jquery trong nguồn vùng thả: if (typeof jQuery == "không xác định" && jQuery == null!) { jQuery.fn.dropzone = function (tùy chọn) { trở lại this.each (function() { trả về Dropzone mới (tùy chọn này); }); }; } jQuery được xây dựng để tạo chuỗi lệnh dễ dàng, không phải cho những gì bạn muốn, nhưng dropzone có thể lưu trữ đối tượng tạo (nguyên mẫu) vào phần tử đã cho. Chỉ cần console.dir ("phần tử của bạn") và kiểm tra danh sách cho dropzone ... Mã quá lớn quá kiểm tra manualy ... – Jordan

Trả lời

5

Tập lệnh dường như thêm đối tượng dropzone vào element nhất định. Vì vậy, bạn có thể làm một cái gì đó như thế này:

var $dropZone = $("#mydropzone").dropzone({ /*options*/ }); 
// ... 
$dropZone[0].dropzone.processQueue(); 
+0

Hi ... điều này không hoạt động ..... bất kỳ cách nào khác ? – preston

+0

Bạn có thể tạo một jsfiddle không? Dễ dàng hơn nhiều để giúp bạn (hoặc bất kỳ URL có thể truy cập nào khác) – Jordan

+0

Ok, phụ thuộc dường như không tải, tôi đã thêm dropzone.js trực tiếp vào fiddle (vì vậy hãy cuộn xuống để xem mã). Tôi xác nhận rằng dropzone thêm đối tượng "dropzone" vào phần tử, nơi bạn có thể gọi processQueue() Tôi đã thêm một đối tượng dropzone() vào đối tượng dropzone gắn với phần tử. https://jsfiddle.net/zbqk7a7z/3/ – Jordan

33

Như đã trình bày trong issue #180

Bạn cũng có thể sử dụng được xây dựng trong Dropzone.forElement chức năng.

var myDropzone = Dropzone.forElement("#mydropzone"); 
+0

đây là câu trả lời hay nhất – dikkini

+2

Đây phải là câu trả lời được chấp nhận! – Hictus

Các vấn đề liên quan