BBCode / Javascript et formulaire

cs_GregL Messages postés 5 Date d'inscription mercredi 14 avril 2004 Statut Membre Dernière intervention 14 décembre 2005 - 16 avril 2004 à 17:21
cs_GregL Messages postés 5 Date d'inscription mercredi 14 avril 2004 Statut Membre Dernière intervention 14 décembre 2005 - 17 avril 2004 à 00:15
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

cs_str Messages postés 20 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 11 mai 2007
16 avril 2004 à 18:22
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]
0
cs_GregL Messages postés 5 Date d'inscription mercredi 14 avril 2004 Statut Membre Dernière intervention 14 décembre 2005
17 avril 2004 à 00:15
Je te remercie ,c'était bien ça le problème ...

Ca va permettre d'avancer un peu ... :)
0
Rejoignez-nous