2009-10-29 8 views

risposta

167

Ti piace questa:

document.getElementById('myTextarea').value = ''; 

o come questo in jQuery:

$('#myTextarea').val(''); 

Dove avete

<textarea id="myTextarea" name="something">This text gets removed</textarea> 

Per tutti i downvoters e non credenti:

+1

Textara non ha valore! –

+0

Non pensavo che il valore avrebbe funzionato perché non c'è. value = in esso ma grazie! – ian

+14

@Petr Peller sì ... – Greg

13

Se è possibile utilizzare jQuery, e consiglio vivamente di fare, si sarebbe semplicemente fare

$('#myTextArea').val(''); 

In caso contrario, è il browser dipendente. Supponendo di avere

var myTextArea = document.getElementById('myTextArea'); 

Nella maggior parte dei browser si fa

myTextArea.innerHTML = ''; 

Ma in Firefox, si fa

myTextArea.innerText = ''; 

Capire quale browser che l'utente sta usando è lasciata come esercizio per il lettore. A meno che non usi jQuery, ovviamente;)

Modifica: lo riprendo. Sembra che il supporto per .innerHTML su textarea sia migliorato. Ho provato su Chrome, Firefox e Internet Explorer, tutti hanno cancellato correttamente la textarea.

Modifica 2: E ho appena controllato, se si utilizza .val ('') in jQuery, imposta solo la proprietà .value per textarea. Quindi, il valore dovrebbe andare bene.

+2

.value = ''; funziona in Chrome FF e Safari ... .innerHTML non funziona in Chrome non ha testato in altri. – ian

+0

Non si dovrebbe usare innerHTML e innerText per i textareas. L'attributo value dovrebbe essere usato. Quindi $ ('# myTextArea'). Val ('') o document.getElementById ('myTextArea'). Value = '' è l'opzione migliore – Parth

7

Anche se molte risposte corrette sono già stati forniti, la classica (lettura non-DOM) approccio sarebbe stato così:

document.forms['yourform']['yourtextarea'].value = 'yourvalue'; 

dove nel codice HTML vostro textarea è annidato da qualche parte in una forma simile a questo:

<form name="yourform"> 
    <textarea name="yourtextarea" rows="10" cols="60"></textarea> 
</form> 

E, come succede, funzionerebbe anche con Netscape Navigator 4 e Internet Explorer 3. E, non senza importanza, Internet Explorer su dispositivi mobili.

0

messo textarea ad una forma, dar loro un nome, e basta usare oggetti facilmente il DOM, in questo modo:

<body onload="form1.box.value = 'Welcome!'"> 
    <form name="form1"> 
    <textarea name="box"></textarea> 
    </form> 
</body> 
Problemi correlati