2017-06-10 1 views
0

In der Datentabelle ist der Spaltenname "Dateiname" und "Dateipfad" angegeben. Wenn auf die Spalte "File Download" geklickt wird, muss die Datei heruntergeladen werden, indem Dateipfad und Dateiname zusammengeführt werden. Ich möchte, indem Sie auf die Datei-Download-Spalte EreignisWie wird aus der Zeile in die Datentabelle geladen?

ich diesen Code versucht, herunterladen,

$('#Datatable tbody').on('click', 'button', function() { 
    var data = table.row($(this).parents('tr')).data(); 
    return(data[3] + data[2]); 
}); 

enter image description here Vielen Dank im Voraus!

Antwort

1

Sie rowCallback function zu Ihrer Datentabelle hinzufügen und letzte Zeile Zelle html auf den Link benötigt ändern, können Sie Datenobjekt verwendet werden, die die Daten für diese Zeile sein wird, die Sie den Dateipfad zu erhalten verwenden werden, um und Name, so etwas wie dies

$('#Datatable ').dataTable({ 
    "rowCallback": function(row, data, index) { 
     $('td:eq(6)', row).html('<a href="'+data.filepath+'/'+data.fileName + '" download>Download</a>'); 

    } 
}); 

ich hoffe, das half.

+0

Ich bin glücklich, dass ich half :) – Munzer

+0

Dank @Munzer es funktioniert .. Mit 'Code' 'Download' habe ich ein anderes Problem in der Controller-Seite, beim Herunterladen der Datei , Fehler ist aufgetreten 'Netzwerk fehlgeschlagen' – Panchi

+0

Sie müssen weitere Informationen zu Ihrer Frage angeben, ich schlage vor, zuerst nach Lösung zu suchen, falls Sie keine gefunden haben, versuchen Sie eine neue Frage hinzuzufügen :) – Munzer

1

Sie können die Datei herunterladen, indem Sie den Download-Button in den Anchor-Tag einfügen. und in href einfach den Dateipfad und den Dateinamen verketten.

<a href="yourFilePath/fileName" download>Download</a>

+0

Ja! aber diese Aktion kann einzelne Dateien herunterladen. Ich habe eine dynamische Datei in jeder Zeile. – Panchi

+1

Anchor-Tag kann auch dynamisch gefüllt werden. Das gleiche wie Sie die beiden Spalten Dateipfad und Dateiname –

Verwandte Themen