bonjour,

je m'essai à coder un bbcode et j'ai une difficulté. j'ai effecuté plusieurs recherche mais je n'ai rien trouve qui corresponde a mes attentes !!

je m'explique !!!

je voudrais placer mon curseur dans mon textarea au milieu de l'insertion occasionné par le clic sur un bouton : j'appuye sur le bouton pour mettre en gras et cela affiche

1
[g][/g]
j'aimerais que le curseur se place automatiquement entre les balises créées.... c'est la que ça bloque !!!!

voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" href="style_pour_test.css"/>
        <title>BBCODE </title>
        <script type="text/javascript">
        function gras()
        {
            document.getElementById("texte").value= document.getElementById("texte").value +"[g][/g]";
            document.getElementById("texte").focus();
        }
        function italique()
        {
            document.getElementById("texte").value=document.getElementById("texte").value + "";
            document.getElementById("texte").focus();
        }
        function souligner()
        {
            document.getElementById("texte").value=document.getElementById("texte").value + "";
            document.getElementById("texte").focus();
        }
        function bbcode()
        {
            var text = document.getElementById("texte").value;
            if(text)
            {
            text = text.replace(/\[g\]([\s\S]*?)\[\/g\]/g, '<strong>$1</strong>');
            text = text.replace(/\[i\]([\s\S]*?)\[\/i\]/g, '<em>$1</em>');
            text = text.replace(/\[s\]([\s\S]*?)\[\/s\]/g, '<span style="text-decoration:underline;">$1</span>');
            }
            else
            {
            text=text;
            }
            document.getElementById("resultat").innerHTML = text;
        }
        </script>
    </head>
    <body>
        <fieldset style="width:35%;background:red;">
            <p style="font-size:1.2em;">texte :</p>
            <input type="button" value="g" style="font-weight:bold;" onClick="gras()"/>
            <input type="button" value="i" style ="font-style:italic;" onClick="italique()"/>
            <input type="button" value="s" style ="text-decoration:underline;" onClick="souligner()"/>
 
            <textarea rows = "25" cols ="75" id="texte" onKeyup="bbcode()"
            onfocus="var t=this.value;this.value='';this.value=t" ></textarea>
        </fieldset>
        <div id="resultat"></div>
    </body>
</html>
merci pour votre aide !!!!!!!