JSFiddle - React, Tailwind, and code Playground
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>TVA belge</title>
</head>
<body>
<form id="f">
<label for="tva">numéro de TVA: </label>
<input id="tva" name="tva" type="text" pattern="[01][0-9]{9}" />
<span id="TVAMessage">erreur</span>
<br /><br />
<input type="submit" value="vérifier" />
<input type="reset" />
</form>
</body>
</html>
CSS
* { font-family: monospace; }
#TVAError { display: inline-block; }
JavaScript
const TVAForm = document.getElementById('f'),
TVAMessage = document.getElementById('TVAMessage');
TVAForm.addEventListener('submit', function(e) {
const ch = e.target.tva.value,
pat = /^([01]\d{7})(\d{2})$/,
m = ch.match(pat);
TVAMessage.textContent =
m instanceof Array && 97 - parseInt(m[1]) % 97 === parseInt(m[2])
? 'OK' : 'ERROR';
e.preventDefault();
});