2014-08-30 5 views
4

프로그래밍 방식으로 maxFiles 옵션을 변경해야합니다. 이 내 초기화입니다 :Dropzonejs : 프로그래밍 방식으로 maxFiles 변경

Dropzone.options.dropzone = { 
        paramName: "files", 
        params:true, 
        url: "/upload.php", 
        autoProcessQueue: true, 
        uploadMultiple: true, 
        parallelUploads: 10, 
        maxFiles: fileleft, 
        previewsContainer: ".dropzone", 
        clickable: true, 
        addRemoveLinks: false, 
        acceptedFiles: '.jpg,.pdf,.png,.bmp',       
        dictInvalidFileType: 'Unsupported.', 
        accept: function(file, done) { 
         done(); 

        }, 
        init: function() { 

         var myDropzone = this; 

         this.on("successmultiple", function(files, response) { 
          ins.pop_gallery(id); 
          this.removeAllFiles(); 

         this.on("maxfilesexceeded", function(file){ 

          this.removeFile(file); 
         }); 

         this.on("sending", function(file, xhr, formData) { 
          formData.append("custom", id); 

         }); 
        } 

       } 

모든 것이 제대로 작동하지만 나중에 MAXFILES 옵션 값을 변경해야합니다.

나는 시도했다이 :

Dropzone.options.dropzone.maxFiles = fileleft; 

이 :

myDropzone.maxFiles = fileleft; 

하지만

alert(Dropzone.options.dropzone.maxFiles); 

이 나에게 정답을 줄이 코드에도 불구하고

에서, MAXFILES 사실에 제한을 업로드 여전히 변함이 없다.

의견이 있으십니까?

감사합니다.

+0

dropzone 옵션 개체에 포함 된 변수를 재설정하지만 사용자가 인스턴스화 한 dropzone의 인스턴스가 수정되지 않습니다. 플러그인을 다시 초기화해야합니다 : $ ('. dropzone'). dropzone (newOptions); – bencripps

답변

4

먼저 재생 해 주셔서 감사합니다. 내가 마지막에, 플러그인을 다시 초기화 할 몇 가지 문제를 발견 내 오류가 초기화에 생각 :

init: function() { 

    var myDropzone = this; 

내가 더 코드의 가시성을 잃어버린 된 VAR를 재 선언.

그래서

myDropzone 지금 작동하고 문

myDropzone.options.maxFiles = fileleft; 

있도록 접근되었다 (VAR없이)

init: function() { 

    myDropzone = this; 

에서 변경.

고마워요.

관련 문제