O parâmetro de tag HTML5 required
é muito útil, exceto quando você deseja adicionar um botão Cancelar envio. Para permitir que o botão Cancelar funcione sem que o navegador forneça um erro nos campos obrigatórios vazios, basta adicionar o formnovalidate
parâmetro ao botão Cancelar. Esta é uma forma abreviada que mostra o parâmetro em uso:
<form>
<label>Email: <input type="email" name="email" required></label>
<input type="submit" name="submit" value="Submit">
<input type="submit" name="submit" value="Cancel" formnovalidate>
</form>