233 votes

<html> Comment changer le contenu d'un <textarea> avec Javascript </ html>

Comment changer le contenu d'un élément <textarea> avec JavaScript?

Je veux le vider.

361voto

Greg Points 132247

Comme ceci:

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

ou comme ça en jQuery:

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

Où vous avez

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

Pour tous les downvoters et les non-croyants:

24voto

Aistina Points 6720

Si vous pouvez utiliser jQuery, et je vous recommande vivement de le faire, il vous suffit de faire

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

Sinon, c'est un navigateur dépendante. En supposant que vous avez

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

Dans la plupart des navigateurs vous ne

myTextArea.innerHTML = '';

Mais dans Firefox, vous ne

myTextArea.innerText = '';

Comprendre ce navigateur de l'utilisateur est laissé comme exercice pour le lecteur. Sauf si vous utilisez jQuery, bien sûr ;)

Edit: je retire ce que. Ressemble à une prise en charge .innerHTML sur textarea l'a amélioré. J'ai testé sur Chrome, Firefox et Internet Explorer, tous effacé le textarea correctement.

Edit 2: Et je viens de vérifier, si vous utilisez .val(") en jQuery, c'est juste jeux de la .la valeur de la propriété pour les textarea. .la valeur doit être fine.

11voto

Paul Points 954

Bien que de nombreuses réponses correctes aient déjà été données, l'approche classique (lire non-DOM) serait la suivante:

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

où dans le HTML votre textarea est imbriqué quelque part dans un formulaire comme celui-ci:

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

Et il se peut que cela fonctionne également avec Netscape Navigator 4 et Internet Explorer 3. Et, non sans importance, Internet Explorer sur les appareils mobiles.

8voto

HappyApe Points 5392

Si c'est Jquery ..

 $("#myText").val('');
 

ou

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

http://www.hscripts.com/tutorials/javascript/dom/textarea-events.php

-2voto

Petr Peller Points 1693

Utilisez la propriété innerHTML.

 textarea = document.getElementById('myArea');
textarea.innerHTML = "";
 

MODIFIER:

Je viens de vérifier cela et le .innerHTML et le .value fonctionnent dans FF 2.0. Mais je pense que l'utilisation des .innerHTML (ou un .innerTEXT finalement) est beaucoup plus logique, car il n'y a pas de propriété value pour la balise textarea en HTML.

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