2011-08-14 22 views
28

Come posso aggiungere testo da un DIV a un'area di testo?Aggiungi testo a textarea - Jquery

ho questo ora:

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

risposta

44

soli append() i nodi di testo:

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

http://jsfiddle.net/nQErc/

+0

Questo non aggiunge il testo nella textarea, ma al di fuori di esso. –

+0

No, non lo fa :) Guarda il codice e controlla l'elemento. Si potrebbe pensare a 'after()' – AlienWebguy

+0

Anche se: aggiunge il testo, ma crea molti spazi. Come può essere evitato? –

21

Che dovrebbe funzionare. Meglio se si passa una funzione di val:

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

In questo modo si evita la ricerca l'elemento e chiamando val due volte.

+2

Meglio come? In quale modo? – AlienWebguy

+3

@AlienWebguy: migliore di '$ ('# replyBox'). Val ($ ('# replyBox'). Val() + quote);' perché non ricerca l'elemento e chiama 'val' due volte. –

+0

Cool, grazie per i chiarimenti. – AlienWebguy

Problemi correlati