[JS] Remplacer les mots dans le code d'une page.
Salut les copains ! :)
Alors voila: je dois me contenter de XHTML et de JS pour des raisons assez tordues, et je dois faire ca:
J'ai un code, comme ceci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<html>
<head>
</head>
<body>
Bienvenue [nom] !<br />
<br />
Tu as [age] ans [nom] =]<br />
<br />
Blablabla...
</body>
</html> |
Auquel je dois ajouter une fonction JS de facon � remplacer tous les [nom] de la page par Roger par exemple et tous les [age] par 31 par �xemple de facon � obtenir ca:
Citation : ce qui devrait �tre afficher
Bienvenue Roger !
Tu as 31 ans Roger =]
Blablabla...
J'ai alors cr�� ca:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<script language="JavaScript">
if (done=="")
{
code = document.documentElement.innerHTML;
code = code.replace("[nom]","Roger");
code = code.replace("[age]","31");
done = 1;
document.write(code);
document.write("lol");
}
</script> |
A mettre entre <head> et </head>.
On m'a dit que le code pouvait �tre r�cup�r� dans une variable avec document.documentElement.innerHTML car le script demande le code de la page sur lequel il se trouve, ce qui ne fonctionnerait pas s'il cherchait le code d'une page �trang�re.
Il y a un truc avec "done" qui prend la valeur 1 de facon � le pas repeter la fonction lors du document.write, sinon cela fait une boucle infinie qui fait planter le navigateur.
Mais h�las cela affiche [nom] et [age] comme si la fonction n'avait servi � rien :'(
J'ai m�me mis le document.write("lol"); pour voir s'il s'affichait mais ca n'�crit pas de "lol" :(
Edit: si je place le script JS apr�s <body> au lieu d'apr�s <head>, le "lol" s'�crit, mais le rest ne change toujours pas :(
Quelqu'un autait-il une id�e ?
Merci d'avance,
Edit2: J'ai essay� ca, completement autre chose, qui m'a parut super, mais toujours sans succ�s:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
<html>
<head>
<script language="JavaScript">
window.onload = pbo();
function pbo()
{
code = document.getElementsByTagName("body").innerHTML;
code = code.replace("'","\'");
code = code.replace("[nom]","Roger");
code = code.replace("[age]","31");
document.getElementsByTagName("body").innerHTML = code;
}
</script>
</head>
<body>
Bienvenue [nom] !<br />
<br />
Tu as [age] ans [nom] =]<br />
<br />
Blablabla...
</body>
</html> |