@Cameron
If you are building a site with Kentico's Portal Engine technology then every page will be wrapped in a <form>
element, since ASP.NET WebForms, the technology Kentico Portal Engine is built on, relies on this to connect front-end (browser) interactions to back-end (server-side) processing.
Your solution is the typical one, however you can also keep the <button id="myButton" type="submit">Submit</button>
if you want and intercept the JavaScript event that is emitted when the button is clicked:
document.querySelector('#myButton').addEventListener('click', function(event) {
event.preventDefault();
});