Usage du localStorage

Une fonction  permet d'afficher le contenu

Tous les valeurs des champs  sont stocké en local
This commit is contained in:
Yannick Francois 2018-10-08 23:49:04 +02:00
parent 0f6abfa7b9
commit affb5500e7
3 changed files with 79 additions and 69 deletions

View File

@ -1,6 +1,5 @@
<!doctype html> <!DOCTYPE html>
<html lang="fr"> <html lang="fr">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="referrer" content="same-origin"> <meta name="referrer" content="same-origin">
@ -23,7 +22,7 @@
<p>Framadate est un service en ligne permettant de planifier un rendez-vous ou prendre des décisions rapidement et <p>Framadate est un service en ligne permettant de planifier un rendez-vous ou prendre des décisions rapidement et
simplement</p> simplement</p>
<a href="parametres.html" class="btn">C'est parti</a> <a href="parametres.html" class="btn" id="startButton">C'est parti</a>
</section> </section>
<section> <section>
@ -36,6 +35,6 @@
</form> </form>
</section> </section>
<script src="script.js"></script>
</body> </body>
<script src="script.js"></script>
</html> </html>

View File

@ -1,4 +1,4 @@
<!doctype html> <!DOCTYPE html>
<html lang="fr"> <html lang="fr">
<head> <head>
@ -19,15 +19,13 @@
<section> <section>
<p> <p>
Je m'appelle Je m'appelle <input name="nom">
<input name="nom" data-group="record" />
et le titre de ce sondage et le titre de ce sondage
<select id="type_sondage" data-group="record"> <select id="type_sondage">
<option>classique</option> <option>classique</option>
<option>special dates</option> <option>special dates</option>
</select> </select>
est est <input name="titre">.
<input name="titre" data-group="record"/>.
</p> </p>
<p> <p>
Si je devais le décrire pour les autres personnes, je dirais Si je devais le décrire pour les autres personnes, je dirais
@ -40,7 +38,7 @@
<a href="reponses.html" class="btn" id="next">Continuer</a> <a href="reponses.html" class="btn" id="next">Continuer</a>
</nav> </nav>
<script src="script.js"></script>
</body> </body>
<script src="script.js"></script>
</html> </html>

View File

@ -1,21 +1,34 @@
window.onload = () => { const debugStorage = () => {
if(localStorage.getItem('type_sondage') == null) { for(var i = 0; i < localStorage.length; i++) {
localStorage.setItem('type_sondage', 'classique'); let key = localStorage.key(i)
console.debug(key, " = ", localStorage[key])
}
} }
console.debug(localStorage) document.querySelectorAll('input').forEach((inputElement) => {
inputElement.addEventListener("change", () => {
localStorage[inputElement.name] = inputElement.value
});
});
let typeSondageElement = document.querySelectorAll("*[data-group='record']") if(document.getElementById("type_sondage")) {
typeSondageElement.forEach((currentElement) => { type_sondage.addEventListener('change', function() {
currentElement.addEventListener('change', function() { let typeSondage = this.options[this.selectedIndex].text;
const selectedType = this.options[this.selectedIndex].text; if(typeSondage == "classique") {
localStorage.setItem('type_sondage', type_sondage); localStorage.setItem('type_sondage', this.options[this.selectedIndex].text);
if(selectedType == "classique") {
document.querySelector('#next').href = "reponses.html"; document.querySelector('#next').href = "reponses.html";
} else { } else {
localStorage.setItem('type_sondage', 'dates');
document.querySelector('#next').href = "dates.html"; document.querySelector('#next').href = "dates.html";
} }
debugStorage()
}) })
}
if(document.getElementById("startButton")) {
startButton.addEventListener('click', function () {
localStorage.clear()
localStorage.setItem('type_sondage', 'classique');
}); });
} }