web-dev-qa-db-fra.com

Effacer les champs de saisie lors de l'envoi du formulaire

Je sais que cette question est constamment posée à nouveau, et j’ai vérifié différentes réponses et essayé différentes solutions, mais en vain. Dans certains cas, il peut s'agir vraiment d'une affaire au cas par cas, en fonction de la manière dont le code a été expurgé.

J'aimerais simplement que les deux champs de saisie de ma page soient effacés lorsque je clique sur Soumettre (&& enter - à moins qu'il s'agisse d'un événement distinct, c'est pour un autre fil), compte tenu du fait que j'appuie toujours sur Entrée plutôt que de cliquer - c'est un site juste destiné à mon usage.

J'ai bien sûr une balise input, tapez submit, et ça fonctionne bien. Mais j'ai aussi déjà une fonction spécifique à onSubmit: 

function onSubmitForm(e) {
    e.preventDefault();
    var var1 = document.getElementById("name");
    var var2 = document.getElementById("review");
    arrayOne.Push( {name:var1.value,review:var2.value} );
    localStorage.filmDatabase = JSON.stringify(arrayOne);
    document.getElementById("eyedee").innerHTML += '<p>' + '<span class=name>' + var1.value + '</span>' + '<span class=review>' + var2.value + '</span>';
}

J'imagine que c'est juste pour mettre une ligne de code (à droite), probablement à la fin du bloc, mais je ne pouvais pas le comprendre. Merci beaucoup pour l'aide!

33
Kizer Yakuza

Utilisez la fonction reset , disponible dans l’élément de formulaire.

var form = document.getElementById("myForm");
form.reset();
36
thomaux

Vous pouvez effacer leurs valeurs en définissant simplement value sur une chaîne vide:

var1.value = '';
var2.value = '';
35
Rob M.

Toujours en utilisant des chaînes vides, vous pouvez utiliser:

document.getElementById("name").value = '';
document.getElementById("review").value = '';
2
megamind

De cette façon, vous tenez un formulaire par son ID et jetez tout son contenu . 

document.forms["id_form"].reset();
0
Damby Green