1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
function table2CSV() {
var dataURL = '',
fieldSeparator = ';',
textField = '"',
lineSeparator = '\n',
regExpTesto = /(")/g,
regExp = /[";]/;
$('#contrat tr').each(function () {
var dataRow = '';
//th
$('th', this).not(':last').each(function () {
var value = $(this).text();
if (dataRow != '')
dataRow += fieldSeparator;
if (regExp.test(value)) {
value = textField + value.replace(regExpTesto, '$1$1') + textField;
}
dataRow += value;
});
$('td', this).not(':last').each(function () {
var value = $(this).text();
if (dataRow != '')
dataRow += fieldSeparator;
if (regExp.test(value)) {
value = textField + value.replace(regExpTesto, '$1$1') + textField;
}
dataRow += value;
});
if (dataURL != '')
dataURL += lineSeparator;
dataURL += dataRow;
});
return 'data:text/csv;charset=utf-8;base64,' + btoa(dataURL);
}
function download(event) {
// event.preventDefault();
$(this).attr('href', table2CSV()); // Setting the dataURI
}
$('a').on('click', download); // Attaching the event |
Partager