IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Tester un controle contenant Numéro de Sécurité Sociale

Ce code tester en Javascript un controle et renvoi vrai (true) si le controle contient les 15 digits d'un No de Sécurité Sociale.
Il est donné pour enrichir le site des codes du même type pour javascript ayant été donné ailleurs.
Avatar de marc.bichara
Membre régulier https://www.developpez.com
Le 16/04/2016 à 16:14
Je me suis rendu compte que le téléchargement ne fonctionne pas je donne donc le code en ligne en couleur bleu.
Un copier coller doit permettre de l'intégrer.
...

Code javascript : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/* Cette fonction teste un controle et s'il s'agit d'un No de sécurité sociale il retourne la valeur vrai, autrement 
 * on retourne la valeur faux 
*/ 
function checkss(qnumss) 
{ 
// qnumss est un controle type input type=text, qnumss.value en est le contenu 
// traitement cas de la Corse on rend la zone a tester numérique   
var enumss = qnumss.value; 
var s7=enumss.substring(6,7) 
if ((s7 == "A") ||(s7 == "B")) 
    enumss=enumss.substring(0,6)+ "0" + enumss.substring(7,15); 
// La zone doit alors etre numérique et ne contenir que 15 digits on valide par expression régulière  
    var filter=/^\d{15}$/; 
if (!filter.test(enumss))  
return false 
else 
// la zone est numérique avec 15 caractères  
{ 
    if ((enumss.substring(0,1) != "1") && (enumss.substring(0,1) != "2") ) return false;    
    var deb13=parseInt(enumss.substring(0,13)); 
// traiter le cas de la corse 
    if (s7 == "A") deb13-=1000000; 
    if (s7 == "B") deb13-=2000000; 
// La Clé SS est égale au reste de la division par 97      
    var div97=97 - (deb13%97); 
    var sdiv97=String(div97); 
  
    if (enumss.substring(13,15) != sdiv97)  
    { 
        alert("Clé Sécurité Sociale incorrecte devrait etre " + sdiv97); 
        return false; 
    }     
} 
return true;}
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.