11const dataForm = document . getElementById ( 'data-form' )
2+ const inputFile = document . getElementById ( 'input-file' )
3+ const fileName = document . getElementById ( 'file-name' )
4+ const btnPreviewData = document . getElementById ( 'btn-preview-data' )
25const previewData = document . getElementById ( 'preview-data-container' )
36
7+
8+
9+
10+ let currentSection = 1
11+
12+
413dataForm . addEventListener ( 'submit' , function ( e ) {
514 e . preventDefault ( )
615
716 const formData = new FormData ( this )
817 const file = formData . get ( 'data' )
918
19+ previewData . classList . remove ( 'hidden' )
20+ previewData . classList . add ( 'block' )
21+
22+ if ( file . size === 0 ) {
23+ previewData . innerHTML = `<h4 class="text-center">No file selected</h4>`
24+ return
25+ }
26+
1027 const reader = new FileReader ( )
1128
1229 reader . onload = ( e ) => {
1330 const fileContent = e . target . result
1431 const rows = fileContent . split ( / [ \r \n ] + / ) . map ( row => row . split ( ',' ) )
15- previewData . style . display = 'block'
1632
1733 let previewedTable = `
18- <table class="min-w-full table-auto bg-white shadow-md rounded-lg">
19- <thead class="bg-gray-200 rounded-t-lg" >
20- <tr>
34+ <table class="min-w-full bg-white border border-gray-200 rounded-lg">
35+ <thead>
36+ <tr class="bg-gray-100 border-b border-gray-200" >
2137 `
2238
2339 for ( const item of rows . shift ( ) ) {
24- previewedTable += `<td class="px-4 py-2 text-left text-sm font-semibold text-gray-700 ">${ item } </td>`
40+ previewedTable += `<td class="py-2 px-4 text-left text-sm font-medium text-gray-600 ">${ item } </td>`
2541 }
2642
2743 previewedTable += `
@@ -30,9 +46,9 @@ dataForm.addEventListener('submit', function(e) {
3046 `
3147
3248 for ( const row of rows ) {
33- previewedTable += `<tr>`
49+ previewedTable += `<tr class="border-b hover:bg-gray-50" >`
3450 for ( const item of row ) {
35- previewedTable += `<td>${ item } </td>`
51+ previewedTable += `<td class="py-2 px-4 text-sm text-gray-700" >${ item } </td>`
3652 }
3753 previewedTable += `</tr>`
3854
@@ -42,4 +58,18 @@ dataForm.addEventListener('submit', function(e) {
4258 }
4359
4460 reader . readAsText ( file )
61+
62+ btnPreviewData . setAttribute ( 'disabled' , true )
63+ this . reset ( )
64+ } )
65+
66+
67+
68+ inputFile . addEventListener ( 'change' , function ( ) {
69+ const file = this . files [ 0 ]
70+ if ( file ) {
71+ fileName . textContent = file . name
72+ }
73+
74+ btnPreviewData . removeAttribute ( 'disabled' )
4575} )
0 commit comments