À l'aide de jquery, comment soustraire automatiquement le montant de la saisie après l'avoir tapé sans le bouton Ex. Quand je tape un nombre dans une entrée, je veux le soustraire -5 après l'avoir laissé automatiquement sans bouton soumettre, 200 sera 195. Est-ce possible?

-5
Gamal Elwazeery 20 nov. 2018 à 21:33

4 réponses

Meilleure réponse

Ok, voici un moyen rapide de le faire dans jquery. Essayez le code ci-dessous. Ajoutez un nombre et tabulez l'entrée ou cliquez dessus et la valeur changera.

$('input').on('blur', function() {
  var num = $(this).val() - 5;
  $(this).val(num);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text">
2
justDan 20 nov. 2018 à 18:46

MODIFIER: Si vous recherchez une alternative JavaScript pure (sans jQuery):

Vous pouvez associer ce processus à un événement d'entrée tel que onkeyup ou onfocusout:

function update() {
  amount = document.getElementById("amount");
  amount.value = parseInt(amount.value) - 5;
}
<input type="text" id="amount" onfocusout="update()">
2
João Eduardo 20 nov. 2018 à 18:53

Pour ce faire, vous devez créer une fonction et attacher l'élément d'entrée à la fonction.

Création d'une fonction pour réduire l'élément d'entrée au changement de 5.

var myfunction = function(){
      var value = parseInt(this.value);
     //check if input is of type int and less than five to avoid negative numbers.
     if( !value || value < 5 ){
          return false;
      }
     this.value = value - 5;
 };

 //ataching function to the element
var element = document.getElementById('my_input');
element.addEventListener( 'change', myfunction, false );
0
Edwin Dijas Chiwona 20 nov. 2018 à 18:52

Solution JavaScript. Cela fonctionnera pour vous.

document.getElementById("input").onblur = substract;

function substract() {
  let firstValue = event.currentTarget.value;
  let finalValue = Number(firstValue) - 5;
  document.getElementById("input").value = finalValue;
}
0
user18984 20 nov. 2018 à 18:50