Je ne suis pas un expert en JQuery mais j'essaie d'obtenir une valeur à partir d'un bouton - lorsque l'utilisateur clique sur un bouton et que le champ de saisie change la valeur.

Mais, je peux avoir beaucoup de boutons .. (Dans les mêmes cas, plus de 100) pour cette raison je veux savoir s'il est possible d'obtenir la valeur du bouton cliqué avec un JQuery "générique" - pour éviter un gros JQuery avec un $('#answer').val() pour chaque bouton ..

https://jsfiddle.net/Ldy01wb2/1/

HTML:

<input type="button" id ='one' value="A">
<input type="button" id ='two' value="B">
<br><br>
Hidden: <input type="text" id="answer" value="">

JQUERY: (ce que je veux)

$(':button').click(function(){
    $('#answer').val = $(':button').val ;
});

JQUERY: (fonctionne ... mais si j'en ai 100, j'ai besoin de 100 fonctions ... et j'essaye d'obtenir une solution générique pour tous les boutons)

$('#one').click(function(){
    $('#answer').val("A") ;
});

$('#two').click(function(){
    $('#answer').val("B") ;
});
0
DANIEL 2 juin 2020 à 10:02

4 réponses

Meilleure réponse

$(this) vous donne le bouton sur lequel vous avez cliqué, je suppose que c'est tout ce dont vous avez besoin.

$('[type=button]').click(function(){
    $('#answer').val($(this).val()) ;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="button" id='one' value="A">
<input type="button" id='two' value="B">
<br><br>
Hidden: <input type="text" id="answer" value="">
2
cloned 2 juin 2020 à 07:14

Veuillez donner une classe au bouton et obtenir la valeur basée sur la classe

$('.mybutton').click(function(){
    $('#myInput').val($(this).val()) ;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="button" class="mybutton" id='one' value="A">
<input type="button" class="mybutton" id='two' value="B">
<br><br>
Hidden: <input type="text" id="myInput" value="">
1
Ajith 2 juin 2020 à 07:18
$("button, input[type='button']").click(function(){
    $('#answer').val(this.val()) ;
});

Veuillez consulter ici pour plus d'informations https://api.jquery.com/button-selector/

0
Karthick Nagarajan 2 juin 2020 à 07:13

Utilisez une classe pour interroger au lieu de l'ID.

$('.button').click(function(){
    $('#answer').val($(this).val());
});

Vous pouvez également utiliser $('input:button').click(function() sans utiliser de classe

0
Sudhansu Bhatta 2 juin 2020 à 07:18