2010-10-26 1 views
2

Je suis en train de faire un téléchargement de fichiers cachés à iframe et je suis coincé. Ce qui semble ne pas fonctionner, c'est de choisir un fichier. Lorsque j'ouvre les contrôles de formulaire et les utilise, tout fonctionne correctement. Si j'utilise des contrôles de formulaire pour choisir un fichier, puis soumettre le formulaire via "envoyer" lien - il fonctionne très bien. Lorsque j'utilise le lien de sélection de fichier, je peux voir que le contrôle de fichier est rempli avec le fichier que j'ai choisi, mais le bouton d'envoi ne soumet pas le formulaire ou le fichier n'est pas téléchargé. En conséquence, je ne peux pas enchaîner ceux qui ont téléchargé automatiquement mon fichier après que je l'ai choisi.obtenir entrée cachée type = fichier pour travailler comme vous le souhaitez

S'il vous plaît montrez-moi ce que je fais mal.

<div class="fileuploader"> 

<form id="fileupload" action="@Url.Action("UploadFile","Publication")" 
     method="post" enctype="multipart/form-data" target="upload_target" > 
style="display:none" 
<input id="filetoupload" name="filetoupload" type="file" /><`enter code here`br /> 
<input id="submitbutton" type="submit" name="submitBtn" value="Upload" /> 
</form> 
<iframe id="upload_target" name="upload_target" src="#" style="width: 0; height: 0; 
border: 0px solid #fff;"></iframe> 
</div> 
<div> 

<a href="#" id="choosefile">choose a file</a> 
<a href="#" id="send">send</a> 

</div> 

<script type="text/javascript"> 
$("#send").click(function(){$("#submitbutton").click();}); 
     $("#choosefile").click(function() { 
    $("#filetoupload").click(); 
     }); 
</script> 

Répondre

1

L'accès par script à l'élément de formulaire Fichier d'entrée est très limité. Vous ne pouvez pas cliquer sur le bouton "Parcourir" de ce contrôle par programmation. La seule façon d'avoir à utiliser le contrôle html standard est d'utiliser une bibliothèque flash telle que SwfUpload qui vous permet entre autre de personnaliser le bouton "Parcourir"

Questions connexes