Remplacer des caractères par d'autres, en javascript

Mammouth du PHP | 959 Messages

29 avr. 2007, 17:49

Bonjour,

Je poste se topic pour savoir si c'est possible que
par exemple : quand j'écrit "php" dans un champ de texte, et que je valide, (avec le bouton "Valider") , "php" se remplace automatiquement par "html"

autre exemple: que quand j'écrit "site" dans un champ de texte, et que je valide, "site" se remplace automatiquement par "image"

Voilà....

Merci d'avance pour ceux qui connaisse le language JavaScript....

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

29 avr. 2007, 21:44

Bonjour,

Voila une possibilité:

Code : Tout sélectionner

var chaine = document.getElementById('id_de_ta_boite_de_texte').value; var chaine.replace("php", "html"); document.getElementById('id_de_ta_boite_de_texte').value=chaine; //alert('Résultat= ' + chaine);
Je l'ai codé en direct sans tester mais normalement ça devrait fonctionner...

##edit: correction d'un pb de parenthèses ;)
Modifié en dernier par @rthur le 30 avr. 2007, 11:29, modifié 1 fois.
Quand tout le reste a échoué, lisez le mode d'emploi...

Mammouth du PHP | 959 Messages

29 avr. 2007, 22:50

eum... merci, mais....
Tu peut me donner carrément le code html ou il y a le champ dedant et le script s'il te plait... :oops:

C'est le seul truc que je connais pas en html :intégrer du script dans du html :oops:

Pour moi, sa donne sa mais sa marche pas... j'ai du surement oublier ou plutôt pas mis car j'y connais rien dans le domaine javascript/intégration javascript html....

Code : Tout sélectionner

<html> <head> <script language="javascript" type="text/javascript"> var chaine = document.getElementById['nom'].value; var chaine.replace("dupond", "jean"); document.getElementById['nom'].value=chaine; //alert('Résultat= ' + chaine); </script> </head> <body> <form method="get" action="index.php"> <input type="text" name="nom" id="nom" /> <input type="submit" value="Envoyer !" /> </form> </body> </html>

Merci et désolé...

PS : les 3 truc que je connais en javascript :
- document.write('Merci !')
- alert('Merci !')
- confirm('Merci !')

Je suis fort hein !?
lol s'était juste pour te montrer mes grandes compétences en javascript :lol:

ViPHP
ViPHP | 5924 Messages

29 avr. 2007, 22:56

C'est le seul truc que je connais pas en html :intégrer du script dans du html
C'est le moment parfait pour apprendre alors.
@rthur t'as donné un code clé en main, mais ca ne semble pas la coutume ici donc je te conseille d'essayer de faire par toi même, sinon, tu ne progresseras jamais, et tu n'auras plus aucune réponse.

Mammouth du PHP | 959 Messages

29 avr. 2007, 23:00

Bé... sa mais bon... je l'ai modifier juste après.... :lol: tu a du posté le message avant que je modifi le mien.... regarde mon code en haut...

ViPHP
ViPHP | 5924 Messages

29 avr. 2007, 23:02

Bé... sa mais bon... je l'ai modifier juste après.... :lol: tu a du posté le message avant que je modifi le mien.... regarde mon code en haut...
ah, c'est mieux alors :)


Tu dois intégrer le code dans une fonction, par exemple

Code : Tout sélectionner

function machin() { // Le code }
Et ensuite indiquer à l'interpréteur javascript qu'il doit exécuter ton code lors de la modification du champ :

Code : Tout sélectionner

<input type="text" onChange="machin()" />
Modifié en dernier par Sékiltoyai le 29 avr. 2007, 23:06, modifié 2 fois.

Mammouth du PHP | 959 Messages

29 avr. 2007, 23:04

lol, j'ai pencé à du " OnClick="je.sais.pas.du.tout" " dans le input de la boîte de texte....

Mammouth du PHP | 959 Messages

29 avr. 2007, 23:10

lol, je croit que tu m'a fait le même coup....

Voilà mon new code : (qui marche toujours pas)

Code : Tout sélectionner

<html> <head> <script language="javascript" type="text/javascript"> function change() { var chaine = document.getElementById['nom'].value; var chaine.replace("dupond", "jean"); document.getElementById['nom'].value=chaine; alert('Résultat= ' + chaine); } </script> </head> <body> <form method="get" action="index.php"> <input type="text" name="nom" onChange="change()" id="nom" /> <input type="submit" value="Envoyer !" /> </form> </body> </html>
Mais qui ne serait tardé.... lol

PS: si le texte se change dès qu'on l'a écrit, c'est bien aussi !

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

30 avr. 2007, 11:28

Tu as bien avancé c'est pas mal :)

J'ai fait une petite erreur dans mon premier code, getElementById est une fonction donc il faut des parenthèses et non des crochets.

Voila ton code corrigé par mes soins, j'ai vérifié il fonctionne:

Code : Tout sélectionner

<html> <head> <script language="javascript" type="text/javascript"> function change() { var chaine = document.getElementById('nom').value; chaine=chaine.replace("dupond", "jean"); document.getElementById('nom').value=chaine; alert('Résultat= ' + chaine); } </script> </head> <body> <form method="get" action="index.php"> <input type="text" name="nom" onchange="change()" id="nom" /> <input type="submit" value="Envoyer !" /> </form> </body> </html>
Quand tout le reste a échoué, lisez le mode d'emploi...

Mammouth du PHP | 959 Messages

30 avr. 2007, 12:40

A ! voilà, c'est à cause de toi ! tu me refait plus sa, c'est bien compri !!!!?? :lol:
nan je rigole

Euy.. Bé en faite, il y a un petit truc à corriger... :
Il faut que le script remplace TOUS les "dupond" par "jean"
Parce-que si j'écrit "dupond de la belle rue de dupond" (ex)
il va me transformer sa en "jean de la belle rue de dupond" --> il n'a pas tranformé le 2ème....

Merci !

PS: si on veut rajouter d'autres champs ? , c'est sa ?

Code : Tout sélectionner

<script language="javascript" type="text/javascript"> function change() { var chaine = document.getElementById('nom').value; var chaine = document.getElementById('prenom').value; chaine=chaine.replace("dupond", "jean"); document.getElementById('nom').value=chaine; document.getElementById('prenom').value=chaine; // alert('Résultat= ' + chaine); } </script>
PPS: j'ai désactivé le message...

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

30 avr. 2007, 13:09

Ne vas pas trop vite, qui va piano va sano et qui va sano va lontano
Regarde bien ton code, il y a un chauvechement de la variable chaine.

Exemple:

Code : Tout sélectionner

var chaine = 1; var chaine = 2; alert(chaine);
Question: que va afficher alert() 1 ou 2 :wink:
Modifié en dernier par sadeq le 30 avr. 2007, 13:12, modifié 1 fois.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Mammouth du PHP | 959 Messages

30 avr. 2007, 13:12

alors ceci ? :

Code : Tout sélectionner

<script language="javascript" type="text/javascript"> function change() { var chaine = document.getElementById('nom').value; var chaine2 = document.getElementById('prenom').value; chaine=chaine.replace("dupond", "jean"); chaine2=chaine2.replace("dupond", "jean"); document.getElementById('nom').value=chaine; document.getElementById('prenom').value=chaine2; // alert('Résultat= ' + chaine); } </script>
Merci !

PS : je rappelle que chui pouri en javascript... lol :lol:

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

30 avr. 2007, 13:13

10/10 8-)

Je rappelle qu'il n'y a pas de mal d'être pourri en quoi que ce soit, si l'on prend le temps de l'améliorer.
Modifié en dernier par sadeq le 30 avr. 2007, 13:14, modifié 1 fois.
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Mammouth du PHP | 959 Messages

30 avr. 2007, 13:14

yeah ! j'essais cela dessuite...

Mammouth du PHP | 959 Messages

30 avr. 2007, 13:19

Question: que va afficher alert() 1 ou 2 :
eum.... je pence que c'est sois :
- aucun
- les 2