JSFiddle - React, Tailwind, and code Playground
HTML
<form id="myForm" action="/" onsubmit="return submitFunction()">
<div>
column_1 <input type="text" name="column_1" value="" />
</div>
<div>
column_2 <input type="text" name="column_2" value="" />
</div>
<div>
column_3 <input type="text" name="column_3" value="" />
</div>
<button type="submit">
Downloaduj CSV
</button>
</form>
JavaScript
function submitFunction() {
const formData = new FormData(document.getElementById('myForm'));
let csvContent = [];
formData.forEach((value, key) => {
csvContent.push(`${key},${value}`);
});
csvContent = csvContent.join("\n");
const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });
const link = document.createElement('a');
link.href = URL.createObjectURL(blob);
link.setAttribute('download', 'data.csv');
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
return false;
}