How to find the accept-charset and enctype attribute of a form in JavaScript?

In HTML forms, the accept-charset and enctype attributes control character encoding and data transmission format. JavaScript provides properties to access these values programmatically.

The accept-charset attribute specifies which character encodings the server accepts for form submission, while enctype defines how form data should be encoded when sent to the server.

Using acceptCharset Property

The acceptCharset property returns the value of the form's accept-charset attribute. Common values include "utf-8" (Unicode encoding) and "ISO-8859-1" (Latin alphabet encoding).

Syntax

document.getElementById('formID').acceptCharset;

Example

Here's how to retrieve the acceptable character set of a form:

<!DOCTYPE html>
<html>
<head>
    <title>Accept-charset Example</title>
</head>
<body>
    <form id="myForm" accept-charset="utf-8">
        <label for="fname">First name:</label>
        <input type="text" id="fname" name="fname"><br><br>
        <label for="lname">Last name:</label>
        <input type="text" id="lname" name="lname"><br><br>
        <input type="submit" value="Submit">
    </form>
    
    <p id="result"></p>
    
    <script>
        const form = document.getElementById('myForm');
        document.getElementById('result').innerHTML = 
            'Accept-charset of the form: ' + form.acceptCharset;
    </script>
</body>
</html>
Accept-charset of the form: utf-8

Using enctype Property

The enctype property returns the encoding type used for form submission. This is only relevant when the form method is POST.

Syntax

document.getElementById('formID').enctype;

Common enctype Values

  • application/x-www-form-urlencoded ? Default encoding type for form data

  • multipart/form-data ? Used when uploading files

  • text/plain ? Sends data without encoding (mainly for debugging)

Example

This example demonstrates how to access the enctype attribute of a form with file upload:

<!DOCTYPE html>
<html>
<head>
    <title>Enctype Example</title>
</head>
<body>
    <form id="uploadForm" method="post" enctype="multipart/form-data">
        <label for="fname">First name:</label>
        <input type="text" id="fname" name="fname"><br><br>
        <label for="profile">Profile picture:</label>
        <input type="file" id="profile" name="profile" accept="image/*"><br><br>
        <input type="submit" value="Upload">
    </form>
    
    <p id="result"></p>
    
    <script>
        const form = document.getElementById('uploadForm');
        document.getElementById('result').innerHTML = 
            'Enctype of the form: ' + form.enctype;
    </script>
</body>
</html>
Enctype of the form: multipart/form-data

Practical Use Cases

These properties are useful for form validation, dynamic form handling, and ensuring proper data encoding before submission. You can check these values programmatically to modify form behavior or validate configuration.

Conclusion

JavaScript's acceptCharset and enctype properties provide easy access to form encoding attributes. Use acceptCharset for character encoding information and enctype to determine data transmission format, especially important for file uploads.

Updated on: 2026-03-15T23:18:59+05:30

502 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements