← Back toHTML DOM

Trigger an event

Written byPhuoc Nguyen
Category
Level 1 — Basic
Created
17 Feb, 2020
Last updated
24 Apr, 2020

Trigger event for inputs

There are some special events that are avaialble as the method's element. You can call them directly such as following:
// For text box and textarea
ele.focus();
ele.blur();

// For form element
formEle.reset();
formEle.submit();

// For any element
ele.click();

Trigger a native event

const trigger = function (ele, eventName) {
const e = document.createEvent('HTMLEvents');
e.initEvent(eventName, true, false);
ele.dispatchEvent(e);
};
You can trigger the `change`, `keyup`, `mousedown` and more by calling
trigger(ele, 'mousedown');

Trigger a custom event

The sample code below triggers a custom event named `hello` with a data of `{ message: 'Hello World' }`:
const e = document.createEvent('CustomEvent');
e.initCustomEvent('hello', true, true, { message: 'Hello World' });

// Trigger the event
ele.dispatchEvent(e);

See also

Questions? 🙋

Do you have any questions? Not just about this specific post, but about any topic in front-end development that you'd like to learn more about? If so, feel free to send me a message on Twitter or send me an email. You can find them at the bottom of this page.
I have a long list of upcoming posts, but your questions or ideas for the next one will be my top priority. Let's learn together! Sharing knowledge is the best way to grow 🥷.

Recent posts ⚡

Newsletter 🔔

If you're into front-end technologies and you want to see more of the content I'm creating, then you might want to consider subscribing to my newsletter.
By subscribing, you'll be the first to know about new articles, products, and exclusive promotions.
Don't worry, I won't spam you. And if you ever change your mind, you can unsubscribe at any time.
Phước Nguyễn