Comment copier du texte d'une textbox vers une autre textbox

Résolu
cs_Louco Messages postés 5 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 22 avril 2014 - Modifié par kazma le 19/04/2014 à 22:58
EnguerrandP Messages postés 295 Date d'inscription vendredi 26 avril 2013 Statut Membre Dernière intervention 15 juillet 2015 - 24 avril 2014 à 10:57
Bonjour,
Je voudrais copier le contenu d'une Textbox d'une table A dans une Texbox d'une table B avec Javascript.
J'ai trouvé du code pour obtenir les coordonnées de la textbox destination qui s'exécute par un clic dans cette textbox:
<script type="text/javascript">

        function myfunc(txt) {
            txt.style.backgroundColor = "gray";
            txtText = txt
            var p = {};
            p.x = txt.offsetLeft;
            p.y = txt.offsetTop;
            while (txt.offsetParent) {
                p.x = p.x + txt.offsetParent.offsetLeft;
                p.y = p.y + txt.offsetParent.offsetTop;
                if (txt == document.getElementsByTagName("body")[0]) {
                    break;
                }
                else {
                    txt = txt.offsetParent;
                }
            }
            //alert("X:" + p.x + " Y:" + p.y);
            txtText.style.top = p.x;
            txtText.style.left = p.y;
            return p;
            
        }


Je veux ensuite copier le texte de ma textbox source dans la textbox destination par un clic sur la textbox source qui exécutera la fonction:
function Entrernb() {}

mais je ne sais pas écrire cette fonction et je pense que ma fonction myfunc(txt) {} contient des erreurs.
Quelqu'un peut-il m'aider ?

7 réponses

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 344
19 avril 2014 à 18:22
Bonjour.
Peux tu nous montrer le code html associé ?
0
cs_Louco Messages postés 5 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 22 avril 2014
21 avril 2014 à 12:10
Bonjour,
Pour le code HTML, la structure est la suivante:


Les texbox destination sont dans une table dont le code HTML est:

<asp:Table ID="Tab1" runat="server" BorderStyle="Solid" CellPadding="0" CellSpacing="0"
HorizontalAlign="Center" CssClass="top">
</asp:Table>

Toutes les textbox dans la table sont de type runat="server" et pour chaque textbox "txt", l'attribut et style suivant est ajouté:

txt.Attributes.Add("onfocus", "myfunc(this)")

txt.CssClass = "chiffreN"

Les texbox source sont dans une table dont le code HTML est:


<asp:Table ID="Tabdata" runat="server"></asp:Table>

Toutes les textbox dans la table sont de type runat="server" et pour chaque textbox "txtText", l'attribut et style suivant est ajouté:

txtText.Attributes.Add("onfocus", "Entrernb(this)")

txtText.CssClass = "chiffreN"
0
@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
Modifié par kazma le 21/04/2014 à 16:45
bonjour

c'est le code html genéré qu'il faut car la on ne sait pas si il s'agit de textarea , input ou autre

un exemple pour un textarea qui est le meme pour un input

<html>
<head>
 <meta http-equiv="content-type" content="text/php; charset=ISO-8859-1" />
 
 <script type="text/javascript">

function copier()
{
 document.getElementById("TextArea_2").value=document.getElementById("TextArea_1").value
}
</script>
 
</head>
<body>

<button onclick='copier()'>copier</button>

<textarea  id="TextArea_1" rows="8" cols="30" >Le Lorem Ipsum est simplement du faux texte employé dans la composition et la mise en page avant impression. Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis les années 1500, quand un peintre anonyme assembla ensemble des morceaux de texte</textarea>

<textarea  id="TextArea_2" rows="8" cols="30" ></textarea> 

</body>
</html>


cours Forest cours !
0
cs_Louco Messages postés 5 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 22 avril 2014
22 avril 2014 à 09:00
Bonjour et merci,

Effectivement le nom dans le code html est ctl550 et n'est pas txtText comme je l'attendais.
Pour la table Tabdata j'obtiens le code suivant:

<table id="Tabdata" class="tabdata9">
<tr>
<td><input name="ctl550" type="text" value="1" class="chiffreN9" onfocus="Entrernb(this)" /></td><td><input name="ctl551" type="text" value="2" class="chiffreN9" onfocus="Entrernb(this)" />

et j'ai la même chose pour la table Tab1.

Je peux essayer d'ajouter un ID à chaque textbox, est-ce que ça suffirait ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Louco Messages postés 5 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 22 avril 2014
Modifié par kazma le 22/04/2014 à 14:03
Bonjour,

Vous m'avez mis sur la voie, j'ai enfin compris la puissance du langage Javascript et j'ai pu écrire en quelques lignes le code pour effectuer la copie de textbox à textbox:

<script type="text/javascript">

        function myfunc(txt) {
            txt.style.backgroundColor = "gray";
            txtdest = txt
            
        }
        function Entrernb(txtsource) {
            var result = txtsource.value;
                txtdest.style.backgroundColor = "";
                txtdest.value = result
        }
    </script>


Merci.
0
@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
22 avril 2014 à 14:04
de rien
0
cs_Louco Messages postés 5 Date d'inscription jeudi 13 septembre 2012 Statut Membre Dernière intervention 22 avril 2014
22 avril 2014 à 15:27
Merci à toi kazma.
0
EnguerrandP Messages postés 295 Date d'inscription vendredi 26 avril 2013 Statut Membre Dernière intervention 15 juillet 2015 1
Modifié par EnguerrandP le 24/04/2014 à 10:58
Si le sujet et clos marque le comme résolu .
0
Rejoignez-nous