Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

285
Views
¿Cómo guardo las entradas de un formulario HTML en un archivo JSON con JavaScript?

Como ya revela mi pregunta, estoy tratando de guardar las entradas de un formulario HTML en un archivo json. Sin embargo, solo puedo guardar las entradas en el almacenamiento local.

 let movies = []; const addMovie = (ev)=>{ ev.preventDefault(); let movie = { id: Date.now(), title: document.getElementById('title').value, year: document.getElementById('yr').value } movies.push(movie); document.querySelector('form').reset(); //saving to localStorage localStorage.setItem('key', JSON.stringify(movies) ); } document.addEventListener('DOMContentLoaded', ()=>{ document.getElementById('btn').addEventListener('click', addMovie); });

Ahora, ya probé los métodos fs.writeFile pero de alguna manera mi PC no quiere importar fs. Entonces, pregunto si hay otra forma de escribir las entradas en JSON o cómo corregir el error de importación de fs.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En un navegador web, puede invocar la descarga de varias maneras. Una de las posibilidades es window.open una ventana, redirigir o crear un enlace e invocar su método de clic.

 const jsonToDownload = '{"foo":42}' function download() { const aElem = document.createElement("A") aElem.href = 'data:application/octet-stream,' + jsonToDownload aElem.download = 'filename.json' aElem.click() }
 <button onclick=download()>Download</button>

Puede utilizar cualquier nombre de archivo. Simplemente configure el atributo de download en el enlace al nombre del archivo.

Si desea descargar datos binarios o grandes, usar el objeto BLOB podría ser una mejor idea. Es bastante simple: cree el BLOB, genere su URL, inicie la descarga y revoque la URL del BLOB.

 const jsonToDownload = '{"foo":42}' function download() { const blob = new Blob([jsonToDownload, ], { type: 'application/json', }) const url = URL.createObjectURL(blob) const aElem = document.createElement("A") aElem.href = 'data:application/octet-stream,' + jsonToDownload aElem.download = 'a' aElem.click() URL.revokeObjectURL(url) }
 <button onclick=download()>Download</button>

Tenga en cuenta que el fragmento anterior probablemente no funcione, porque el uso de iframe de StackOverflow prohíbe este comportamiento en algunos navegadores. Copie el código en su propio archivo HTML y pruébelo allí.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!