Forum Clubic

[Javascript] Besoin d'aide pour Javascript BBCode

Hello :bounce:
J’ai fait un formulaire tout simple pour montrer mon problème.
J’ai donc un formulaire sous cette forme :
Tu clic sur un lien ça rajoute la balise dans le textarea.
Le problème c’est que je voudrais que s’il y a du texte dans le textarea et qu’on le selectionne puis qu’on clic sur le lien pour ajouter la balise ça mette le texte entre ses 2 là.
Pour faire simple si j’ai un texte “blabla” et que je le selectionne j’ai ça :
avant :
blabla[ b][ /b]
Après
[ b]blabla[ /b]

Voilà si vous pouviez me dire ce que je dois modifier dans le javascript pour obtenir ce résultat ce serait super sympa ;p
Merci d’avance :love:

ha oui j’allais oublier le code

<html>
<head>
<script type="text/javascript">
function add_balise(balise)
{
 document.formulaire.message.value += '['+balise+']' + '[/'+balise+']';
}
</script>
</head>
<body>

<form name="formulaire" method="post" action="">
 <a href="javascript:add_balise('b')">Ajouter balise b</a>
 <br /><textarea name="message" cols="25" rows="4"></textarea>
</form>
</body>
</html>

Tu t’y connais en javascript? si oui, tu cliques sur “Répondre”, et tu repompes le script de Clubic. Il est hardu à comprendre par contre. Sinon, tu as celui de mes forums, fait maison :

http://www.system-tek.com/nwinter/phpbb2/t…urien/bbcode.js

Bien sûr, c’est plus complexe. Pour une page de test, je dirais non. je n’en ai pas.

Bin merci mais disons que j’en ai regardé des codes, phpbb, invision, mesdicussions et j’ai pas trop compris j’y connais rien en javascript.
J’aurais aimé simplement qu’on modifie mon script qui fais 3 lignes pour ajouter cette option qui je pense prend 3sec pour quelqun qui s’y connait (comme toi? :))

Ca ne prend pas trois secondes hein.
Basiquement, sur mon script faut jouer avec bc_set_selection qui te mâche tout le boulot (d’ailleurs, le script entier te mâche tout le boulot puisqu’il permet d’utiliser des tags pour remplacer habilement le curseur, etc).

Pour la fonction bc_set_selection, suffit juste de remplacer BASE_FORM par le formulaire de ton choix, supprimer le if (… ) etc.

Bonjour Sans-Nom,

J’apprécie ton partage de code, il est lisible (comme certains).

Mais je n’arrive pas à bien l’adapter à mon formulaire,
serais-tu copier ton code du formulaire avec les bons noms de champs, id, …

Cela m’aiderait énormément, je te remercie d’avance.