cover-img

keypress

16 March, 2023

0

0

0

About

The keypress event is fired when a user presses a key on their keyboard that produces a character value (e.g. letters, numbers, punctuation marks, etc.). This event is similar to the keydown event, but is triggered only for keys that have a character value associated with them.

Unlike the keydown event, the keypress event doesn't repeat when a user holds down a key. Instead, it fires once when the key is initially pressed and held down, and then fires again if the key is released and pressed again.

The keypress event provides information about the character code and the key code of the pressed key, as well as the shift, alt, and control keys that were pressed along with it. This information can be used to determine what character was typed and to take action based on that input.

Event listener

HTML

<input type="text" id="myInput" placeholder="Type something...">

JavaScript

const input = document.getElementById('myInput');
input.addEventListener('keypress', function(event) {
console.log('Key pressed:', event.key);
});

Here, we have an HTML input element with an ID of myInput. We use JavaScript to add an event listener to this element for the keypress event. When the event is fired (i.e. when the user types a character into the input field), the event handler function logs a message to the console that includes the character value of the pressed key.

Property

Here's an example of using the onkeypress property with a function assigned to it:

const element = document.getElementById("myInput");

element.onkeypress = function(event) {
console.log("Key pressed:", event.key); // Log the pressed key to the console
};

Here, we retrieve the input element with the ID "myInput" using the getElementById method. We then assign a function to the onkeypress property of the element.

The function takes an event parameter, which contains information about the keypress event. In this case, we use the key property of the event to log the pressed key to the console.

Inline

The keypress event can be used inline in HTML by using the onkeypress attribute, like this:

<input type="text" onkeypress="console.log('Key pressed:', event.key);" placeholder="Type something...">

Here, we add the onkeypress attribute to the input element and set its value to a JavaScript expression that logs a message to the console with the character value of the pressed key.

Note that using inline event handlers like this can make your HTML code more difficult to read and maintain, especially if you have many elements with event handlers. It's generally better practice to use external JavaScript code and the addEventListener() method to add event handlers.

Programmatic trigger

There is no keypress() method that can be used to trigger the keypress event programmatically; however, you can simulate a keypress event using the dispatchEvent() method:

const input = document.getElementById('myInput');
const event = new KeyboardEvent('keypress', {
key: 'a',
code: 'KeyA',
keyCode: 65,
charCode: 97
});
input.dispatchEvent(event);

Here, we first select an input element with an ID of myInput. We then create a new KeyboardEvent object with the keypress event type and specify the properties of the event that we want to simulate (in this case, a key press of the letter "a"). Finally, we use the dispatchEvent() method to trigger the keypress event on the input element.

Note that while this code can simulate a keypress event, it's generally not recommended to do so unless you have a specific use case for it. The keypress event is designed to be user-generated and should generally be triggered by actual user input, rather than by programmatic means.

javascript

javascriptevent

keypress

0

0

0

javascript

javascriptevent

keypress

Milsaware
C#, PHP, Javascript, Kotlin App Developer

More Articles

Showwcase is a professional tech network with over 0 users from over 150 countries. We assist tech professionals in showcasing their unique skills through dedicated profiles and connect them with top global companies for career opportunities.

© Copyright 2025. Showcase Creators Inc. All rights reserved.