Bonjour.
J'ai essayé de trouver l'alternatif du précédent code PHP de génération de numéros de façon ordonnée que vous m'aviez aidé à faire en JS.
Puisque le code plante à chaque fois mes navigateur. Je voulais un tout peu l'optimiser et au lieu de l'afficher, je voulais le passer dans l'en-tête du navigateur pour le télécharger automatiquement.
1 - Dans un premier temps, ajouter un troisième formulaire (input) au côté HTML.
2 - Récupérer cette valeur entrée dans une variable javascript ET la concaténer au début des nombres à générer dans le Code actuel.
Par exemple:
Si l'utilisateur met une valeur "hello" dans le nouveau formulaire ; il devrait avoir un un retour de succession de nombres générés de "0" "9999" en tenant bien sûr compte de la "LONGUEUR MAXIMALE" des nombres souhaitée à générer et du "DEBUT".
Comme par exemple: hello11110000 (dans ce cas, "hello" a été concaténé, "1111" a été le numéro renseigné et "8" la longueur maximale renseignée). Ceci successivement jusqu'à "hello11119999".
2 - Ne plus afficher les resultats sur la page HTML mais passer tout le résultat de numéros générés ligne par ligne dans le header du navigateur avec un fichier ".csv" qui doit être automatiquement téléchargé.
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
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 <html> <body> <input type="number" id="val1" > <input type="number" id="val2" > <input type="button" value="Lancer" onclick="run();"> <div id="list"></div> </body> <script> function run() { var l1, i = 0, v1, v2, newline, n0; v1 = Number(document.getElementById("val1").value); v2 = Number(document.getElementById("val2").value); l1 = v1.toString().length; newline = document.getElementById("list").innerHTML = ""; if (l1 < v2) { while (i.toString().length <= (v2 - l1)) { n0 = nb0(v2 - l1 - i.toString().length) newline = document.getElementById("list").appendChild(document.createElement("div")); newline.innerHTML = v1 + "" + n0 + "" + i; i++; } } } function nb0(nb) { var val = ""; for (var i = 0; i < nb; i++) val += "0"; return val; } </script> </html>
Merci d'avance de m'aider sur ces deux points.
Partager