Bonjour il y a 4 ans, javatwister m'a �crit le script suivant pour v�rifier la validit� d'un n� de TVA en Belgique:
Le script ci-dessus r�pondait � la demande suivante: le num�ro de TVA commence par 0 et est en 10 chiffes.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 <script> document.getElementById("f").addEventListener("submit",function(e){ const ch=e.target["tva"].value,// le champ tva ch2=parseInt(ch.slice(1,8));// le champ tva sans le début et la fin if(!/^0\d{9}$/.test(ch) || 97-(ch2-(parseInt(ch2/97)*97))!=parseInt(ch.slice(8))){// le test alert("<%=(getMsg(154,WrongVAT))%>"); e.preventDefault();// empêche la soumission du formulaire } }) </script>
Pour v�rifier la validit� on laisse tomber le premier chiffre (0) et les deux derniers.
Exemple:
0472968436
4729684 / 97 = 48759,628
48759 * 97 = 4729623
4729684 - 4729623 = 61
97 - 61 = 36
Cqfd.
La donne a un peu chang�.
Maintenant, le num�ro de TVA peut commencer par 1.
La m�thode de v�rification reste inchang�e, sauf que maintenant, il faut consid�rer le premier chiffre (1 ou 0).
Exemple:
1003345828
10033458 / 97 = 103437
1034397 * 97 = 10033389
10033458 -- 10033389 = 69
97 - 69 = 28
Cqfd
Comment dois-je modifier le script ci-dessous pour l'adapter � la nouvelle situation ?
Merci d'avance pour votre aide.
Partager