Mettre en memoire le resultat d une conversion
Bonjour,
j'ai le code suivant qui sert à convertir un numéro de sécu s'il est sans espace ou le contraire: supprimer les espaces s'ils sont détectés.
Cela fonctionne bien.
En revanche, j'aurais aimé que le résultat de la conversion se mette en mémoire vive mais cela ne fonctionne pas...
Voila le code ci dessous si quelqu un a une idée:
Code:
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| <!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Convertisseur </title>
</head>
<body>
<h2>Convertisseur</h2>
<label for="secuInput">Entrez votre numéro de secu :</label>
<input type="text" id="secuInput" oninput="formatsecuNumber()">
<div id="result"></div>
<script>
function formatsecuNumber() {
// Récupère la valeur saisie dans le champ de texte
let secuNumber = document.getElementById("secuInput").value;
// Supprime tous les espaces de la saisie
let secuNumberWithoutSpaces = secuNumber.replace(/\s/g, '');
// Vérifie s'il y a des espaces dans le numéro saisi
let hasSpaces = secuNumberWithoutSpaces.length !== secuNumber.length;
let formattedsecuNumber;
if (hasSpaces) {
// S'il y a des espaces, stocke la valeur sans espaces en mémoire vive
formattedsecuNumber = secuNumberWithoutSpaces;
} else {
// S'il n'y a pas d'espaces, formate la valeur avec les espaces nécessaires
formattedsecuNumber = secuNumberWithoutSpaces.replace(/(\d{1})?(\d{2})?(\d{2})?(\d{2})?(\d{3})?(\d{3})?(\d{2})?/, function(match, p1, p2, p3, p4, p5, p6, p7) {
// Construit le numéro avec les groupes de chiffres
let result = '';
if (p1) result += p1;
if (p2) result += ' ' + p2;
if (p3) result += ' ' + p3;
if (p4) result += ' ' + p4;
if (p5) result += ' ' + p5;
if (p6) result += ' ' + p6;
if (p7) result += ' ' + p7;
return result.trim(); // Supprime les espaces en trop
});
}
// Affiche le résultat dans la div avec l'id "result"
document.getElementById("result").innerText = "Numéro de secu : " + formattedsecuNumber;
// Stocke le résultat en mémoire vive
sessionStorage.setItem("formattedsecuNumber", formattedsecuNumber);
// Vide le champ de saisie
document.getElementById("secuInput").value = "";
}
</script>
</body>
</html> |