User:Dragoniez/SuppressEnterInForm.js

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
$(function() {

	// Collect <input> tags in forms for an HTTP POST request
	/** @type {JQuery<HTMLInputElement>} */
	var $inputs = $('.mw-body-content form[method="post"] input');
	if (!$inputs.length) return;

	// Assign an event listner to prevent form submission
	$inputs.each(function() {
		if (!this.type || /^(text|number|url|tel|email|password)$/i.test(this.type)) {
			this.addEventListener('keypress', function(e) {
				if (e.key === 'Enter') {
					e.preventDefault();
				}
			});
		}
	});

});