51 votes

Ajouter du texte à une zone de texte - Jquery

Comment puis-je ajouter le texte d'un DIV à un textarea ?

Je l'ai maintenant :

    $('.oquote').click(function() { 
      $('#replyBox').slideDown('slow', function() {
      var quote = $('.container').text();   
         $('#replyBox').val($('#replyBox').val()+quote);   
        // Animation complete.
      });    
    });

75voto

AlienWebguy Points 42370

Juste append() les nœuds de texte :

$('#replyBox').append(quote); 

http://jsfiddle.net/nQErc/

2 votes

Cela n'ajoute pas le texte dans la zone de texte, mais en dehors de celle-ci.

0 votes

Non, pas du tout :) Regardez le code et inspectez l'élément. Vous pouvez penser à after()

0 votes

Bien que : Il ajoute le texte, mais il crée de nombreux espaces. Comment éviter cela ?

48voto

Felix Kling Points 247451

Ça devrait marcher. C'est mieux si vous passez une fonction à val :

$('#replyBox').val(function(i, text) {
    return text + quote;
});

De cette façon, vous évitez de rechercher l'élément et d'appeler val deux fois.

4 votes

@AlienWebguy : Mieux que $('#replyBox').val($('#replyBox').val()+quote); car il ne cherche pas l'élément et n'appelle pas val deux fois.

0 votes

Meilleure réponse....

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X