BBCode / Javascript et formulaire

Signaler
Messages postés
5
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
14 décembre 2005
-
Messages postés
5
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
14 décembre 2005
-
Hello ,

Je sais que c'est un site dédié au PHP mais j'ai un petit problème avec du Javascript pour mettre complétement en place du BBCode dans un petit gestionnaire d'édito en PHP .

Pour le remplacement du bbcode par des balises html ,j'ai pris le script avec preg_replace() de ce site comme exemple et ça fonctionne bien .

Mais par contre je sèche sur la partie qui me permettra de sélectionner une partie du texte puis de cliquer sur un lien ou un bouton pour insérer le bbcode dans la partie textarea de mon formulaire .

function addstyle(styl){
if ((navigator.userAgent.indexOf("Opera 6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)||(navigator.appName=="Netscape")||(navigator.platform!="Win32")){
document.postnew.corps.value+="["+ styl + "] styl + "";
}else{
var chaine = document.selection.createRange().text;
document.postnew.corps.focus();
var surligne = document.selection.createRange();
surligne.text = "[" + styl + "]" + chaine + "+ styl + "";
}
return false;
}

J'ai trouvé ce script mais j'obtiens une erreur " document.postnew.corps.focus est null si je l'utilise tel quel . J'ai donc pensé qu'il fallait simpliment déclarer l'élément document.postnew.corps dans la balise form de cette façon mais ça ne joue pas non plus :

<form method="post" name="postnew.corps" action="texte.php">

Est ce que par hasard sait où je me plante et comment je peux remédier à ce problème ?

2 réponses

Messages postés
20
Date d'inscription
lundi 9 juin 2003
Statut
Membre
Dernière intervention
11 mai 2007

Salut,

Essai d'appeler ton formulaire postnew au lien de postnew.corp Si j'ai bon souvenir, le parseur de javascript va mal interpreter la commande document.postnew.corps.focus car il va chercher une équivalence corps dans la page.

De plus, j'ai bien peur que le focus ne marche pas sur les formulaire mais sur les éléments du formulaire.
Il cherche donc un champ texte ou autre chose du nom de corps.

Ca devrait donc fonctionner si tu déclare ton formulaire et le champ associé comme il faut :

<form method="post" name="postnew" action="texte.php">

</form>

sEe YoU

[StR]
Messages postés
5
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
14 décembre 2005

Je te remercie ,c'était bien ça le problème ...

Ca va permettre d'avancer un peu ... :)