Adloun

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

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →