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

  • Marissah Simonini

    Marissah Sim

    25 HAZİRAN 2013
  • nemoking of kinges

    nemoking of

    4 EYLÜL 2009
  • TheForgottenGamer1

    TheForgotten

    28 AĞUSTOS 2009