181 votes

Comment est-ce que je bande des espaces blancs lors de saisie de texte avec jQuery ?

Je suis désireux d'utiliser jQuery pour envelopper un mailto: l'ancre vers une adresse e-mail, mais c'est aussi saisissant le whitepace que le CMS est la génération.

Voici le code HTML que j'ai à travailler avec le script que je l'ai et une copie de la sortie.

html

<div class="field field-type-text field-field-email">
  <div class="field-item">
    name@example.com    </div>
</div>

jQuery JavaScript

$(document).ready(function(){
  $('div.field-field-email .field-item').each(function(){
    var emailAdd = $(this).text();
      $(this).wrapInner('<a href="mailto:' + emailAdd + '"></a>');
   });
 });

Code HTML généré

<div class="field field-type-text field-field-email">
  <div class="field-items"><a href="mailto:%0A%20%20%20%20name@example.com%20%20%20%20">
    name@example.com    </a></div>
</div>

Bien que je soupçonne que la lecture de cette question pourrait veux juste la bande de leader et d'étalement des espaces, je suis assez content de perdre tous les espaces étant donné que c'est une adresse e-mail je suis de l'emballage.

Cheers,
Steve

330voto

Andreas Grech Points 39188

Utilisation du `` fonction en js :

Qui va supprimer tous les espaces

Si vous souhaitez supprimer le début et un espace uniquement, utilisez la méthode jQuery de .trim $ :

99voto

KhanSharp Points 1754

JavaScript a construire en garniture

ne fonctionne pas dans IE8. Si vous avez appuyer l’utilisation de navigateurs plus ancienne réponse Tuxmentat ou Paul

69voto

Tuxmentat Points 752

En fait, jQuery possède une fonction trim :

Voir ici pour plus de détails.

24voto

Paul Points 111

``

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X