2009-09-02 5 views
4

Je voudrais être en mesure d'invoquer un téléchargement de fichier à partir de rails en utilisant le lien vers la télécommande. Je l'ai ressemble le lien de travail correct, ceci:Comment appelez-vous un téléchargement de fichier avec link_to_remote dans des rails?

link_to_remote image_tag("icons/ppt_48.png"), 
    :url => formatted_element_path(@element, :ppt), 
    :method => :get, 
    :with => "'stoplight=' + $F('stoplight')" 

La réponse contient le fichier approprié, mais le dialogue de téléchargement ne semble pas lorsque la réponse vient Est-il possible d'invoquer le dialogue de téléchargement.? J'ai besoin que cela fonctionne dans IE ainsi que Firefox

thx,

C

Répondre

6

Une article from ParticleTree mentionne une solution simple et efficace qui n'implique pas AJAX du tout, mais ne cause un fichier à télécharger sans que l'utilisateur de quitter la page en cours:

<form id="super_form" method="post" action="/file/"> 
    <input type="hidden" id="download" name="download" /> 
</form> 

$('download').value = 'top10'; 
$('super_form').submit(); 

Cela ne répond pas directement à votre question sur la façon d'avoir un téléchargement de fichier via une requête AJAX, mais je pense que cela donnera à votre utilisateur final l'expérience que vous recherchez.