web-dev-qa-db-fra.com

Obtenir la valeur dans une zone de texte d'entrée

Quels sont les moyens d'obtenir et de restituer une valeur d'entrée à l'aide de jQuery?

En voici un: 

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.3.min.js" ></script>
<script type="text/javascript">
    $(document).ready(function(){
        $("#txt_name").keyup(function(){
            alert($(this).val());
        });
    })
</script>

<input type="text" id="txt_name"  />
900
Bharanikumar
//Get
var bla = $('#txt_name').val();

//Set
$('#txt_name').val(bla);
1496
Conrad

Vous ne pouvez sélectionner une valeur que de deux manières:

// First way to get a value
value = $("#txt_name").val(); 

// Second way to get a value
value = $("#txt_name").attr('value');

Si vous voulez utiliser du code JavaScript pour obtenir la valeur, voici comment:

document.getElementById('txt_name').value 
577
RJD22

Il y a une chose importante à mentionner:

$("#txt_name").val();

renverra la valeur réelle actuelle d'un champ de texte, par exemple si l'utilisateur a saisi quelque chose après le chargement d'une page.

Mais:

$("#txt_name").attr('value')

retournera la valeur de DOM/HTML.

78
Artur79

Vous pouvez obtenir directement l'attribut value puisque vous savez que c'est un élément <input>, mais votre utilisation actuelle de .val() est déjà celle en cours.

Pour ce qui précède, utilisez simplement .value sur l’élément DOM directement, comme ceci :

$(document).ready(function(){
  $("#txt_name").keyup(function(){
    alert(this.value);
  });
});
38
Nick Craver

Je pense que cette fonction est manquée ici dans les réponses précédentes

.val( function(index, value) ) 
14
dilip kumbham

Vous devez utiliser différentes méthodes pour obtenir la valeur actuelle d'un élément d'entrée. 

MÉTHODE - 1

Si vous voulez utiliser un .val() simple, essayez ceci:

<input type="text" id="txt_name" />

Obtenir les valeurs de l'entrée

// use to select with DOM element.
$("input").val();

// use the id to select the element.
$("#txt_name").val();

// use type="text" with input to select the element
$("input:text").val();

Régler la valeur sur Entrée

// use to add "text content" to the DOM element.
$("input").val("text content");

// use the id to add "text content" to the element.
$("#txt_name").val("text content");

// use type="text" with input to add "text content" to the element
$("input:text").val("text content");

MÉTHODE - 2

Utilisez .attr() pour obtenir le contenu.

<input type="text" id="txt_name" value="" />

Je viens d'ajouter un attribut au champ de saisie. L'attribut value="" est celui qui contient le contenu textuel entré dans le champ de saisie.

$("input").attr("value");

MÉTHODE - 3

vous pouvez utiliser celui-ci directement sur votre élément input.

$("input").keyup(function(){
    alert(this.value);
});
13
Simplans

Vous pouvez obtenir la valeur comme ceci:

this['inputname'].value

this fait référence au formulaire contenant l'entrée.

13

Pour obtenir la valeur de la zone de texte, vous pouvez utiliser la fonction jQuery val().

Par exemple,

$('input:textbox').val() - Récupère la valeur de la zone de texte.

$('input:textbox').val("new text message") - Définit la valeur de la zone de texte.

5
Leon

Vous pouvez simplement définir la valeur dans la zone de texte.

Tout d'abord, vous obtenez la valeur comme

var getValue = $('#txt_name').val();

Après avoir défini une valeur en entrée comme

$('#txt_name').val(getValue);
1
Muddasir23

Pour ceux qui, comme moi, sont des débutants dans JS et obtiennent undefined au lieu de la valeur de texte, assurez-vous que votre id ne contient pas de caractères non valides .

1
Mikhail Sirotenko

Essaye ça. Cela fonctionnera à coup sûr.

var userInput = $('#txt_name').attr('value')
0
H.Ostwal