Appliquer plusieurs styles sur une chaine
Bonjours à tous,
je voudrais afficher les erreurs sur une chaine de caractère : par exemple, si la chaine contient 2 opérateurs consécutifs, le 2ème opérateur est coloré en rouge.
J'ai réussi à récupérer le début de la chaine et le dernier caractère de la chaine mais je n'arrive pas à colorer seulement le dernier caractère en rouge.(toute ma chaine change de couleur ou une seule partie de ma chaine s'affiche)
L'id de la zone ou est extrait la chaine et ou est affiché la chaine est : ecranCalculatrice
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| function surlignerDernierCaractere(chaine, monDiv){
var longueurChaine = chaine.length;
if(longueurChaine===0){
; // Ne rien faire
}
else if(longueurChaine===1){
var correction=chaine.substring(chaine.length-1, chaine.length);
alert("1 seul caractère : "+correction);
document.getElementById(monDiv).innerHTML=correction;
document.getElementById(monDiv).style.color="red";
}
else{
var correction1=chaine.substring(0, chaine.length-1);
alert("début chaine"+correction1);
var correction2=chaine.substring(chaine.length-1, chaine.length);
alert("dernier caractère : "+correction2);
document.getElementById(monDiv).innerHTML=correction1;
document.getElementById(monDiv).innerHTML=correction2;
}
} |
Pourriez vous m'aider, merci d'avance
J'aurais bien une idée mais ça me parait bien compliqué : créer 2 balises span : une pour la partie juste en noir et une pour la partie fausse en rouge, chacune des span ayant une classe spécifique. Auriez vous d'autres propositions ?