Home > Web Front-end > JS Tutorial > Form required attributes using custom validation messages in HTML5

Form required attributes using custom validation messages in HTML5

WBOY
Release: 2023-08-25 10:29:15
forward
712 people have browsed it

使用 HTML5 中的自定义验证消息形成必需属性

HTML5 includes many built-in form validation features, allowing developers to easily add validation to their forms. One of these features is the "required" attribute, which specifies that the input field is required and must be filled in before the form can be submitted.

The "required" attribute is a Boolean attribute. If there are any input fields in the form with the "required" attribute, this field must be filled in before submitting the form.

If this particular field is left blank before submitting the form, the user will see an error message in their browser informing them that this input field is required.

Use the "required" attribute

To use the "required" attribute, simply add the attribute to the input field you want to make required -

<html>
<body>
   <form>
      <label for="name">Name:</label>
      <input type="text" required>
   </form>
</body>
</html>
Copy after login

The browser will verify that the input fields are filled in before submitting the form, and will display an error message if not. Depending on the browser, the default error message may vary, but usually states that the field is required.

Custom verification message

We can also change the message for invalid input by specifying a unique message that will be sent to the user when the field is invalid. We can change the default validation message using the "title" attribute -

<html>
<body>
   <form>
      <label for="name">Name:</label>
      <input type="text" id="name" required title="Please enter your name">
   </form>
</body>
</html> 
Copy after login

This code will display the message "Please enter your name" to the user if the input field is left blank when the form is submitted.

To specify a regular expression that input must match each time a form is filled out, HTML5 provides the "pattern" element in addition to the "title" attribute, allowing programmers to specify a regular expression that input must match in order to be accepted. . If the input does not match the required pattern, the user will see an error notification in the browser

Example

Here is an example of how to use the "pattern" attribute to specify the minimum length of an input field -

<html>
<body>
   <form>
      <label for="name">Name:</label>
      <input type="text" required pattern=".{3,}" title="Please enter at least 3 characters">
   </form>
</body>
</html>
Copy after login

If the input does not meet this condition, the message "Please enter at least 3 characters" will be displayed. This code requires the input field to contain at least 3 characters.

Custom error message style

Using CSS, you can change the appearance of error messages. By default, error messages are added to input fields as small text nodes and written in red font. However, we can modify the appearance of the error message and control how it appears using CSS.

The ":invalid" pseudo-class can be used to select an input field if it is invalid, and the CSS property can be used to change the style of the error message.

Example

The following is an example of how to customize the error message style using CSS -

<html>
   <style>
      input:invalid {
         border: 2px solid red;
      }
      input:invalid + span {
         color: red;
         font-weight: bold;
      }
   </style>
   <body>
      <form>
         <label for="name">Name:</label>
         <input type="text" required pattern=".{3,}" title="Please enter at least 3 characters">
      </form>
   </body>
</html>
Copy after login

When an input field is invalid, this code turns its border red and displays the error message in bold and red.

Customizing error messages using JavaScript

In addition to using CSS, we can also use JavaScript to customize the error message and control how it is displayed.

To customize the error message using JavaScript, we can use the "setCustomValidity" method, which allows us to specify a custom error message for the input field.

Example

< /p>

The following is an example of how to set a custom error message using the "setCustomValidity" method -

<html>
<body>
   <h2>JavaScript Validation</h2>
   <p>Enter a number and click OK:</p>
   <input id="InputField" type="text" required>
   <button onclick="myFunction()">OK</button>
   <p id="demo"></p>
   <script>
      function myFunction() {
         const txt = document.getElementById("InputField").value;
         console.log(txt);
         const txtLen = txt.length;
         console.log(txtLen);
         if (txtLen<3) {
            document.getElementById("demo").innerHTML = "Must be atleast 3 characters";
         } else {
            document.getElementById("demo").innerHTML = "Input OK";
         }
      }
   </script>
</body>
</html>
Copy after login

This code will set the input field's error message to "Please enter a valid value."

in conclusion

In this article, we looked at how to combine personalized verification messages with the HTML5 "needed" element. We've discussed the basics of form validation, the "needed" tag, and how to leverage JavaScript and CSS to personalize validation messages.

Developers can quickly add form validation to HTML5 forms and ensure that users have provided the necessary information by leveraging the "needed" element and customizing the validation message. Many web applications rely on form validation because it is an important tool to ensure the accuracy and completeness of user input.

The above is the detailed content of Form required attributes using custom validation messages in HTML5. For more information, please follow other related articles on the PHP Chinese website!

source:tutorialspoint.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template