3 votes

effacer les champs de saisie au clic d'un bouton avec javascript

J'ai un programme qui crée des zones de saisie de texte de manière dynamique. Je veux effacer le contenu des boîtes en cliquant sur le bouton d'effacement.

var elems = document.getElementsByClassName(CLId);
var myLength = elems.length;
var total = 0;
for (var i = 0; i < myLength; ++i) {
  if(elems[i].value != null && elems[i].value > 0){
    var el = elems[i];
  }
}

Je l'utilise pour obtenir les valeurs des cases, mais je ne sais pas comment les rendre vides....

4voto

Gabriel Points 5234

S'il s'agit d'un formulaire, vous pouvez simplement utiliser la fonction <input type="reset" value="clear"/> (HTML). Sinon, vous voudrez :

var elems = document.getElementsByTagName("input");
var l = elems.length;
for (var i = 0; i < l; ++i){
  elems[i].value="";
}

4voto

galambalazs Points 24393

Utiliser getElementsByTagName (la version classe n'est pas encore cross-browser) et fixer la valeur à "" pour les éléments de la classe souhaitée.

var cname, elems = document.getElementsByTagName("input");
for ( var i = elems.length; i--; ) {
    cname = elems[i].className;
    if ( cname && cname.indexOf(CLId) > -1 ) {
        // empty the input box
        elems[i].value = ""; 
    }
}

(ou vous pouvez utiliser un réinitialiser pour l'ensemble du formulaire)

3voto

Darin Dimitrov Points 528142

Vous pouvez essayer de régler la valeur :

el.value = '';

3voto

Robusto Points 17430

La valeur de elems[i] dans votre boucle sera une chaîne de caractères, vous pouvez donc tester sa longueur ou son équivalent à la chaîne vide (""). Vous pouvez également définir sa valeur à "" pour l'effacer.

elems[i].value = ""

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