web-dev-qa-db-fra.com

jquery comment vider le champ de saisie

Je suis dans une application mobile et j'utilise un champ de saisie pour que l'utilisateur envoie un numéro.

Quand je reviens en arrière et retourne à la page, ce champ de saisie présente le dernier numéro entré dans le champ de saisie.

Est-il possible d'effacer le champ à chaque chargement de la page?

$('#shares').keyup(function(){
    payment = 0;
    calcTotal();
    gtotal = ($('#shares').val() * 1) + payment;
    gtotal = gtotal.toFixed(2);
    $("p.total").html("Total Payment: <strong>" + gtotal + "</strong>");
});
175
kosbou

Vous pouvez effacer le champ de saisie en utilisant $('#shares').val('');

367
shaunsantacruz
$(document).ready(function(){
  $('#shares').val('');
});
21
osahyoun

Le réglage de val('') vide le champ de saisie. Donc, vous utiliseriez ceci:

Effacez le champ de saisie lors du chargement de la page:

$(function(){
    $('#shares').val('');
});
8
Francis Lewis

Lors de la soumission du formulaire, utilisez la méthode de réinitialisation sur le formulaire. La méthode reset () réinitialise les valeurs de tous les éléments d'un formulaire.

$('#form-id')[0].reset();

OR 

document.getElementById("form-id").reset();

https://developer.mozilla.org/en-US/docs/Web/API/HTMLFormElement/reset

$("#submit-button").on("click", function(){
       //code here
       $('#form-id')[0].reset();
});
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>
<body>
<form id="form-id">
  First name:<br>
  <input type="text" name="firstname">
  <br>
  Last name:<br>
  <input type="text" name="lastname">
  <br><br>
  <input id="submit-button" type="submit" value="Submit">
</form> 
</body>
</html>
5
Radhika

Puisque vous utilisez jQuery, pourquoi ne pas utiliser un déclencheur - reset :

$(document).ready(function(){
  $('#shares').trigger(':reset');
});
4
Sablefoste

si vous cliquez sur le bouton "retour", il a tendance à rester collé. Ce que vous pouvez faire, c'est lorsque le formulaire est soumis, effacez l'élément avant de passer à la page suivante, mais après avoir fait avec l'élément ce dont vous avez besoin.

    $('#shares').keyup(function(){
                payment = 0;
                calcTotal();
                gtotal = ($('#shares').val() * 1) + payment;
                gtotal = gtotal.toFixed(2);
                $('#shares').val('');
                $("p.total").html("Total Payment: <strong>" + gtotal + "</strong>");
            });
0
chris