JavaScript : rendre le Web interactif (école d'ingénieur) · Chapitre 7 · Application directe du cours
La valeur d'un champ
Le DOM : lire et modifier la page · niveau 2
Énoncé
La page contient <input id="q" type="number" value="1"> et une case à cocher <input id="accord" type="checkbox">. Prédire, puis expliquer, l'affichage de ce script.
const q = document.querySelector("#q");
q.value = "5";
console.log(q.value, q.getAttribute("value"), q.defaultValue);
q.setAttribute("value", "2");
console.log(q.value, q.getAttribute("value"));
const accord = document.querySelector("#accord");
accord.checked = true;
console.log(accord.checked, accord.hasAttribute("checked"));
console.log(typeof q.value, q.valueAsNumber + 1, q.value + 1);Corrigé
5 1 1
5 2
true false
string 6 51
L'affectation de q.value change la valeur actuelle mais pas l'attribut, qui reste la valeur initiale, également lisible par defaultValue. Changer ensuite l'attribut ne modifie plus la valeur affichée : dès que la valeur a été modifiée (par l'utilisateur ou par un script), elle ne suit plus l'attribut. De même, checked est l'état actuel de la case, l'attribut checked son état initial. Enfin, value est une chaîne : q.value + 1 concatène ("51"), alors que valueAsNumber + 1 additionne.
100 % gratuit
La suite du chapitre est sur Adloun
- 10 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.