How to disable default behavior of <input type=“time”> when you press enter with JavaScript?

JavascriptWeb DevelopmentObject Oriented Programming

For this, you need to use keyDown as well as preventDefault(). Following is the JavaScript code −

Example

 Live Demo

<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input type="time" id="disableDefaultTime">
<script>
   const pressEnter = (event) => {
      if (event.key === "Enter") {
         event.preventDefault();
      }
   };
   document.getElementById("disableDefaultTime").addEventListener("keydown",
   pressEnter);
</script>
</body>
</html>

To run the above program , just save the file name anyName.html(index.html) and right click on the file and select the option open with live server in VSCode editor.

Output

Following is the output. When you press Enter key nothing will be displayed.

You need to use keyDown to get time as in the below screenshot −


raja
Published on 14-Jul-2020 12:02:19
Advertisements