How to save form data in html using javascript

I am sharing a simple example here today that explains how easily you can save your form data in a text file or in a .txt file using JavaScript.

A web form usually has many different elements, mostly input fields. You can extract data from these elements and save it in a database like SQL Server, or simply convert it into a JSON file. You can even save your form data in a text file.

Let’s see the example first.



    Save form Data in a Text File using JavaScript
    
        * {
            box-sizing: border-box;
        }
    	div {
            padding: 10px;
            background-color: #f6f6f6;
            overflow: hidden;
        }
    	input[type=text], textarea, select {
            width: 100%;
            padding: 12px;
            border: 1px solid #ccc;
            border-radius: 4px;
        }
        input[type=button]{ 
            width: auto;
            float: right;
            cursor: pointer;
            padding: 7px;
        }
    


    
-- Choose the country -- India Japan USA
let saveFile = [] => { const name = document.getElementById['txtName']; const age = document.getElementById['txtAge']; const email = document.getElementById['txtEmail']; const country = document.getElementById['selCountry']; const msg = document.getElementById['msg']; let data = '\r Name: ' + name.value + ' \r\n ' + 'Age: ' +age.value + ' \r\n ' + 'Email: ' + email.value + ' \r\n ' + 'Country: ' + country.value + ' \r\n ' + 'Message: ' + msg.value; const textToBLOB = new Blob[[data], { type: 'text/plain' }]; const sFileName = 'formData.txt'; let newLink = document.createElement["a"]; newLink.download = sFileName; if [window.webkitURL != null] { newLink.href = window.webkitURL.createObjectURL[textToBLOB]; } else { newLink.href = window.URL.createObjectURL[textToBLOB]; newLink.style.display = "none"; document.body.appendChild[newLink]; } newLink.click[]; }

Try it

Please do not get overwhelmed by the size of the program. The code inside the tag is important.

I have designed a simple form using CSS and few HTML elements along with a dropdown list. I idea behind using so many elements is to show you how you can save form data in text file using values extracted from different input elements.

Inside the script, the first thing I am doing is getting all the values from each element.

Later, I am creating a string [using the values], so that I can convert the whole string into a BLOB object.

let data = 
    '\r Name: ' + name.value + ' \r\n ' + 
    'Age: ' +age.value + ' \r\n ' + 
    'Email: ' + email.value + ' \r\n ' + 
    'Country: ' + country.value + ' \r\n ' + 
    'Message: ' + msg.value;

The \r\n is for new line or line breaks, so that each data can be written in a new line in the text file.

Next, I am creating a Link [the anchor tag] [which is not visible anywhere on the form] and assigning the text file as the link’s download property.

let newLink = document.createElement["a"];
newLink.download = sFileName;

Once I have created the link, I’ll assign the BLOB object as the href [or as the URL] to the newly created Link tag.

if [window.webkitURL != null] {
    newLink.href = window.webkitURL.createObjectURL[textToBLOB];
}
else {
    newLink.href = window.URL.createObjectURL[textToBLOB];
    newLink.style.display = "none";
    document.body.appendChild[newLink];
}

👉 Now, you can also convert your Form data into PDF using JavaScript.

BLOB stands for Binary Large Object. BLOBs are typically, images and audio files, which are converted into Binary and are later stored in a database. Using the Blob[] constructor, I can convert ordinary texts into Blob objects.

You can see the BLOB value [attached to the link’s URL or tag that we created in our script] in your browser’s console window. For example,

if [window.webkitURL != null] {
    newLink.href = window.webkitURL.createObjectURL[textToBLOB];
    console.log [newLink];    
}

image

The image shows the tag with URL having the blob value. In the console window, copy the URL and paste it in the browser’s address bar. The browser will translate the BLOB and will show the value.

Remember: Every time you click the save button, the script will create a new BLOB from the form data.

The final line of code, simply calls the click event of the tag and the browser downloads the file containing the data in your local hard disc.

newLink.click[];

👉 Not just plain text, you can even convert an image into a PDF using only JavaScript. Check out this post.

That's it. Thanks for reading.

← PreviousNext →


How can we store form data in HTML?

HTML web storage provides two objects for storing data on the client: window.localStorage - stores data with no expiration date. window.sessionStorage - stores data for one session [data is lost when the browser tab is closed]

How can store form data in JavaScript?

if you want to save it on a database. submit the form to a page that can run some back-end code, like php, asp, coldfision, jsp, or what ever you favorite language is. NOTE: a more modern way of storing data is using Window. localStorage.

How send data from JavaScript to HTML?

JavaScript can "display" data in different ways:.
Writing into an HTML element, using innerHTML ..
Writing into the HTML output using document.write[] ..
Writing into an alert box, using window.alert[] ..
Writing into the browser console, using console.log[] ..

How do I save textbox value to .TXT file in HTML using JavaScript?

If you want, you can download the source code of this project [Textarea Text to a File using JavaScript]..
Create a box on the webpage.
... .
Add a heading. ... .
Create a text input box. ... .
Create a box to input the file name. ... .
Create file download button. ... .
Save Text to File with JavaScript..

How do I save a form data file?

Create a PHP file and put the below code and save it. Store form data in . txt file Enter Your Text Here:

Chủ Đề