2017-09-18 5 views
1

J'utilise plupload pour permettre aux utilisateurs de télécharger des fichiers. Je passe deux multi params avec plupload. Le premier paramètre est défini dynamiquement lors du chargement de la page. L'autre est défini lorsque l'utilisateur sélectionne dans un menu de sélection.plupload dynamic multi params

Le deuxième paramètre est vide lorsque la page se charge et je ne sais pas comment le transmettre à plupload après que l'utilisateur ait fait un choix.

Si j'ajoute le code plupload à la fonction de changement cela fonctionne mais je ne le veux pas parce que plupload n'est pas visible tant que l'utilisateur n'a pas fait de choix.

J'espère que quelqu'un peut m'aider.

voici mon code:

$("#uType").change(function(){ 
     var upType = $('#uType').val(); 
     $("#type").val(this.value); 
    }); 

    var uploader = $("#uploader").plupload({ 
     // General settings 
     runtimes : 'html5,flash,silverlight,html4', 
     url : "/wp-content/plugins/tyhp-filemaker/tyhp-youth-upload.php", 

     // Maximum file size 
     max_file_size : '2mb', 

     chunk_size: '1mb', 

     // Resize images on clientside if we can 
     resize : { 
     width : 200, 
     height : 200, 
     quality : 90, 
     crop: true // crop to exact dimensions 
     }, 

     multipart_params: {'type': $('#type').val(), 'account' : $('#AccountUpload').val()}, 

     // Specify what files to browse for 
     filters : [ 
      {title : "Image files", extensions : "jpg,gif,png"}, 
      {title : "Zip files", extensions : "zip,avi"} 
     ], 

     // Rename files by clicking on their titles 
     rename: true, 

     // Sort files 
     sortable: true, 

     // Enable ability to drag'n'drop files onto the widget (currently only HTML5 supports that) 
     dragdrop: true, 

     // Views to activate 
     views: { 
      list: true, 
      thumbs: true, // Show thumbs 
      active: 'thumbs' 
     } 

     // Flash settings 
     flash_swf_url : '/plupload/js/Moxie.swf', 

     // Silverlight settings 
     silverlight_xap_url : '/plupload/js/Moxie.xap' 
     }); 

Répondre

1

J'ai trouvé une solution à mon problème.

Voici comment vous connecter à l'instance plupload existante et définir les multiples params basé sur un événement de changement d'un menu de sélection:

$("#uType").change(function(){ 
    var upType = $('#uType').val(); 
    $("#type").val(this.value); 
    var uploader = $('#uploader').plupload('getUploader'); 
    uploader.settings.multipart_params.type = $("#type").val(); 
    uploader.settings.multipart_params.account = $('#AccountUpload').val(); 
});