Pour modifier le texte à l'intérieur d'une balise, le plus simple est
d'utiliser la propriété textContent
de l'objet du DOM représentant
la balise, comme cela est présenté dans l'exemple disponible ici.
NB: cette propriété ne doit être utilisée que pour accéder et/ou modifier uniquement
une zone de texte, sans balise HTML. Dans ce dernier cas, il est possible d'utiliser la propriété
innerHTML
comme l'illustre
l'exemple suivant.
NB2: : il est fortement déconseillé d'utiliser la propriété innerHTML
pour modifier autre chose
qu'un simple texte et ainsi modifier la structure du document, à moins d'avoir validé proprement le bout de document ainsi inséré.
En effet, cela peut engendrer des problèmes de sécurité. De plus, c'est beaucoup moins efficace que de créer manuellement les nouveaux
noeuds du document. Vous trouverez ici une page illustrant ces aspects.
Pour modifier la valeur d'un attribut, on peut utiliser la méthode setAttribute(nomAttribut, valeurAttribut)
de l'objet du DOM représentant la balise, comme cela est présenté ici.
Le style appliqué à un élément HTML (par défaut ou via une feuille de style CSS) peut être localement complété
ou modifié via la propriété javascript style
du noeud du DOM correspondant à la balise HTML ciblée. Le site MDN fait
une courte présentation de cette balise .
Voici de plus un exemple d'utilisation pour modifier la couleur du texte d'une balise pre
. Notez
qu'après avoir cliqué sur le bouton, les 2 paragraphes se voient tout deux appliqués le style associé à la balise pre
dans la feuille de style. Mais le second paragraphe a une couleur de texte différente en raison de sa propriété style
.
Le site w3schools fournit une liste des principales propriétés CSS modifiables
via la propriétés style
.
Pour ajouter un nouveau noeud (une nouvelle balise) au document, il faut :
createElement("nomBalise")
de l'objetdocument
;
appendChild
.
Ceci est illustré ici.
Pour supprimer un noeud du DOM, il faut appeler la méthode removeChild
sur son noeud parent en passant l'objet représentant le noeud du DOM à Supprimer.
Ceci est illustré ici.
Modifier l'exercice 4 de la partie précédente pour faire en sorte que, dans le cas où il n'y aucune erreur, la fonction suite
soit réellement appelée et son résultat affiché sous la forme d'une nouvelle ligne dans la page. Pour cela, vous pourrez utiliser le fichier exoEvenements4Complet.html dans lequel a été ajouté un bloc pour la présentation des résultats. Il faut donc modifier le fichier exoEvenements4.js
pour que, suite à un clic sur le bouton générer
et dans le cas où il n'y a pas d'erreur dans ce qui a été saisi, un nouveau paragraphe contenant une ligne avec la suite de nombre générées soit ajoutée dans le bloc dédié.
Repartir de l'exercice précédent et faire en sorte, qu'au lieu d'ajouter des paragraphes à chaque suite de nombres, on insère une nouvelle ligne (balises <tr> et<td>) à
un tableau HTML (balise <table>) de 4 colonnes :
|debut | fin | pas | suite générée |
Ainsi, dans la page HTML initiale, le tableau HTML est vide (aucune balise <tr> à l'intérieur de la balise <table>) et au fur et à mesure des calculs lancés par l'utilisateur, le tableau est étoffé par l'ajout de lignes.
Réaliser un page Web avec un formulaire permettant à l'utilisateur de saisir 2 nombres. Après un clic sur un bouton "calculer", le document doit se voir ajouter les 4 lignes suivantes :
Les lignes liées à un éventuel calcul précédent doivent être supprimées. Par contre, le formulaire de saisi reste disponible pour permettre à l'utilisateur de lancer un calcul sur de nouvelles valeurs.
NB : dans un premier temps, on ne fera pas de vérification sur les données du formulaire, on supposera donc que ce sont bien des nombres valides.