Я разработал функциональность для экспорта файлов, используя JQuery Datatable Collections
. Когда я нажимаю кнопку, например, PDF (см. Изображение ниже), она экспортирует данные в формате PDF.
![enter image description here](https://i.stack.imgur.com/v052U.png)
Вот мой код для этого.
buttons: [
{
extend: 'collection',
text: 'Save & Column Visibility',
autoClose: true,
buttons: [
{ text: 'Copy', extend: 'copyHtml5'},
{ text: 'Excel', extend: 'excelHtml5'},
{ text: 'CSV', extend: 'csvHtml5'},
{ text: 'PDF', extend: 'pdfHtml5'},
{ text: 'Print', extend: 'print' }
],
fade: true,
}
],
Мое требование состоит в том, чтобы реализовать эту функцию в событии изменения раскрывающегося списка вместо события нажатия кнопки.
Вот мой код для раскрывающегося списка, который я сделал до сих пор.
$('<div class="pull-right">' +
'<select id="dropdown" name="dropdown" class="form-control">' +
'<option value="copy">Copy</option>' +
'<option value="excel">Excel</option>' +
'<option value="csv">CSV</option>' +
'<option value="pdf">PDF</option>' +
'<option value="print">print</option>' +
'</select>' +
'</div>').appendTo("#tbMenu_wrapper .dataTables_filter");
$(".dataTables_filter label").addClass("pull-right");
});
Вот функция события Onchange, которую я создал для целей тестирования.
$(function () {
$("#dropdown").change(function () {
if ($(this).val() == "copy") {
alert("From Copy");
}
else if ($(this).val() == "excel") {
alert("From excel");
}
else if ($(this).val() == "csv") {
alert("From csv");
}
else if ($(this).val() == "pdf") {
alert("From pdf");
}
else if ($(this).val() == "print") {
alert("From print");
} else {
alert("From else part");
}
});
Работает нормально, когда я нажимаю на раскрывающееся значение и выдает предупреждение, как указано в функции. Но что мне теперь делать в вышеупомянутом коде, который предоставит мне возможность экспорта файлов в выпадающем списке изменений?