Obtenir le texte de la scope en utilisant jquery

En donnant ce fichier HTML, je veux récupérer “August” quand je clique dessus:

August 

j’ai essayé

 $(".ui-datepicker-month").live("click", function () { var monthname = $(this).val(); alert(monthname); }); 

mais ne semble pas fonctionner

Au lieu de .val() utilisez .text() , comme ceci:

 $(".ui-datepicker-month").live("click", function () { var monthname = $(this).text(); alert(monthname); }); 

Ou dans jQuery 1.7+, on utilise on() comme live est déconseillé:

 $(document).on('click', '.ui-datepicker-month', function () { var monthname = $(this).text(); alert(monthname); }); 

.val() est pour les éléments de type d’entrée (y compris les zones de texte et les listes déroulantes), puisque vous traitez avec un élément avec un contenu de texte, utilisez .text() ici.

Je pense que vous voulez .text() :

 var monthname = $(this).text(); 

Pour récupérer le texte d’une valeur de plage générée automatiquement, procédez comme suit:

 var al = $("#id-span-name").text(); alert(al); 

-Non de ce qui précède a toujours fonctionné pour moi. Voici donc la solution que j’ai mise au point et qui fonctionne de manière cohérente sur tous les navigateurs, car elle utilise des fonctionnalités de base. J’espère que cela peut aider les autres. Utiliser jQuery 8.2

1) Obtenez l’object jquery pour “span”. 2) Obtenez l’object DOM ci-dessus. Utiliser jquery .get (0) 3) Utiliser le paramètre innerText de l’object DOM pour obtenir le texte.

Voici un exemple simple

 var curSpan = $(this).parent().children(' span').get(0); var spansText = curSpan.innerText; 

HTML

 
testinput

Vous pouvez utiliser .html() pour obtenir le contenu des éléments span et ou div .

Exemple:

  var monthname = $(this).html(); alert(monthname); 

Et c’est parti:

 $(".ui-datepicker-month").click(function(){ var textSpan = $(this).text(); alert(textSpan); }); 

J’espère que cela aide;)

.val() est pour les éléments d’entrée, utilisez plutôt .html()