SORU
28 Aralık 2010, Salı


JQuery ile bir dosya indir.Ajax

Dosya indirmek için sunucu tarafında Struts2 bir eylem var.

<action name="download" class="com.xxx.DownAction">
    <result name="success" type="stream">
        <param name="contentType">text/plain</param>
        <param name="inputName">imageStream</param>
        <param name="contentDisposition">attachment;filename={fileName}</param>
        <param name="bufferSize">1024</param>
    </result>
</action>

Eylem jQuery kullanarak aradığımda ancak:

$.post(
  "/download.action",{
    para1:value1,
    para2:value2
    ....
  },function(data){
      console.info(data);
   }
);

Firebug veriler ile retreived olduğunu görüyorumİkili akışı. Açmak için nasıl merak ediyorumdosya indirme penceresikullanıcı dosyayı kaydedebilirsiniz hangi ile yerel olarak?

CEVAP
2 NİSAN 2012, PAZARTESİ


Bluish bu konuda tamamen haklı, JavaScript doğrudan bir kullanıcının bilgisayar (güvenlik endişeleri) dosyalarını kaydetmek için Ajax ile bunu yapamazsın. Ne yazık ki işaretana pencereDosya indirme URL kullanıcı deneyimi dosya indirme oluştuğunda ne kontrolü anlamına gelir.

"Ajax" dosyayı indir OnSuccess ile tam ve OnFailure daha iyi bir kullanıcı deneyimi sunmak için geri çağrıları ile deneyim gibi bir imkan veren jQuery File Download ben yarattım ** 8 eklenti çözer ortak sorunu benim ve kullanmak için bazı yollar ve demo of jQuery File Download in action da bir göz atın. Burada source

Burada vaatlerle eklentisi source kullanarak demo kullanımı basit bir dava. demo page birçok diğer, daha iyi UX 'de örnekler içerir.

$.fileDownload('some/file.pdf')
    .done(function () { alert('File download a success!'); })
    .fail(function () { alert('File download failed!'); });

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • discokatze

    discokatze

    23 EYLÜL 2009
  • Sergio Fernandez

    Sergio Ferna

    1 EKİM 2009
  • Viktorija A.

    Viktorija A.

    28 Mart 2009