J'essaie d'utiliser le plugin swfupload pour télécharger des fichiers. La chose est, je veux que l'utilisateur puisse changer le répertoire pour télécharger. La chose étrange est (et peut-être cela est dû à ma connaissance limitée de jQuery) qu'il semble que j'ai le bon répertoire lors de la vérification avec une alerte, mais toujours le téléchargement va au répertoire précédemment sélectionné.Modifier le répertoire dans swfupload plugin jQuery?
I.e. si j'ouvre la page et que je clique sur le lien de téléchargement, un div appelé uploadPanel s'affiche, qui charge le fichier swfupload. Je peux faire le premier téléchargement bien. Mais si je choisis un répertoire différent, cela ne fonctionne pas. J'ai mis dans une alerte pour tester que la variable pour le répertoire courant est correcte. Cette alerte affiche toujours le répertoire actuel correctement. Mais toujours quand la méthode d'action dans le code du serveur est appelée, le répertoire est toujours pour le premier répertoire sélectionné que j'ai eu dans le premier téléchargement.
Voici le code jQuery:
<script type="text/javascript">
var uploadDir;
$(function() {
$("#uploadPanel").hide();
var auth = "<% = Request.Cookies[FormsAuthentication.FormsCookieName]==null ? string.Empty : Request.Cookies[FormsAuthentication.FormsCookieName].Value %>";
loadFileManager();
$("#uploadLink").click(function (event) {
$('#uploadPanel').show();
alert("uploadDir: " + uploadDir); //NOTE!!!: This shows the correct current directory, and yet, in post_params below, a previous directory is still sent to the action method in the Controller. How is this possible when the alert shows the correct directory?
$("#inputFile").makeAsyncUploader({
upload_url: "/Upload/AsyncUpload/",
flash_url: '/Scripts/swfupload.swf',
button_image_url: '/Scripts/blankButton.png',
post_params: { token: auth, currentDirectory: uploadDir },
use_query_string: true,
disableDuringUpload: 'INPUT[type="submit"]'
});
$("#closeButton").click(function() {
$("#uploadPanel").hide();
$("#inputFile_completedMessage").hide();
});
});
});
</script>
Note: le UploadDir est défini ailleurs, dans un fichier séparé js. Mais le fait est que la valeur est toujours correcte dans l'alerte, alors pourquoi pas dans l'appel à la méthode d'action?
Je ne sais pas si je vous ai mal compris ... J'utilise le plugin SWFUpload. – Anders