• 04-03-2020, 23:37:51
    #1
    Arkadaşlar hem öğrenip hem bir proje hayata geçirmeye çalışıyorum ama beceremediğim bir konu var yardımcı olursanız memnun olurum.
    İzah etmeye çalışayım,
    Bir sürü checkbox var ve her birinde bir dosya olduğunu düşünün.
    Kullanıcı sayfadaki checkboxtan istediklerini seçiyor ve indir butonuna basıyor. Seçili olan dosyalar sırayla iniyor. Bunu yapmaya çalışıyorum. Tek tek seçince indirmeyi başarabildim fakat çoklu şekilde bir türlü yapamadım.
    Bilgili arkadaşlardan yardım bekliyorum teşekkür ederim şimdiden.



    sorunum günceldir
  • 22-03-2020, 23:26:43
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba hocam,

    Aşağıdaki kodlar işine yarayacaktır. Önce test.html oluşturup bir deneyin, Jquery kütüphanesini eklemeyi de ihmal etmeyin.
    <div>
    Dosya 1 <input type="checkbox" id="chkDown" value="dosya_yolu1.pdf" name="chkF1"><br>
    Dosya 2<input type="checkbox" id="chkDown" value="dosya_yolu2.pdf" name="chkF1"><br>
    Dosya 3<input type="checkbox" id="chkDown" value="dosya_yolu3.pdf" name="chkF1"><br>
    Dosya 4<input type="checkbox" id="chkDown" value="dosya_yolu4.pdf" name="chkF1"><br>
      <p class="msg">Sonuç: </p>
      <input type="button" id="btnDownload" value="indir">
    </div>
    var urls = [];
    $("#btnDownload").on('click', function(e){
      $.each($("input[name='chkF1']:checked"), function(){
          urls.push($(this).val());
      });
      $(".msg").html(urls.join(", ")); //test için hangi dosyalar seçili ise onları yazdırır. kullanırken kaldırabilirsiniz.
      $.each(urls, function(index, val){
        var a = document.createElement("a");
        a.setAttribute('href', val);
        a.setAttribute('download', '');
        a.setAttribute('target', '_blank');
        a.click();
      });
    
      e.preventDefault();
    });