2010-07-15 4 views
1

Bienvenue,Check est textarea vide (ne traitant que 'enter' comme vide)?

J'ai textarea et j'ai une petite fonction ce qui me permet de soumettre un message sur entrer keypress.

$(function(){ 
    $('input').keydown(function(e){ 
     if (e.keyCode == 13) { 

      $(".sender").click(); 
      return false; 
     } 
    }); 
}); 

C'est bien de travail, je veux dire :) grand

Ensuite, je veux envoyer sous forme vide désavouer. Donc je pensais que ce serait une tâche facile.

var tag = $("#mytextarea").val(); 

if(tag.length<1) 
{ 
//empty 
} 
else 
{ 
//not empty 
} 

Mais cela ne fonctionne pas. J'essaie aussi val == « » Je pense qu'il compte qui entrent dans ce que l'utilisateur a frappé à envoyer le formulaire;) je tentais valeur d'alerte, mais je suis seulement entrer ...

Alors, comment puis-je vérifier si est vide ou non, mais en comptant entrer, comme vide. Si seulement entrer se trouve, menace comme l'espace vide val == ''

Cordialement

Répondre

3

Essayez

/\S/.test(tag); 

\S est regex pour "tout caractère non-blanc".

Donc, si ce modèle correspond à tag, cela signifie que tag contient tout caractère non-espace.

if(/\S/.test(tag)) { 
    // has content! 
} 
+0

Merci, ça fonctionne très bien. Agréable d'apprendre quelque chose de nouveau;) – marc

0

Vous devez utiliser regexp pour cela, comprend également les cas où vous avez un retour chariot:

if(tag.search(/[^\n\s]/)!=-1) 
{ 
//not empty 
} 
else 
{ 
//empty 
}