Vérifiez si la zone de texte a une valeur vide

90

J'ai le code suivant:

var inp = $("#txt");

if(inp.val() != "")
// do something

Existe-t-il un autre moyen de vérifier la zone de texte vide en utilisant la variable 'inp'

KJai
la source
1
devriez-vous vérifier en utilisant aussi la garniture?
Sarawut Positwinyu
2
Pourquoi n'est-il inp.val() != ''pas régularisé?
Matteo Tassinari

Réponses:

169
if (inp.val().length > 0) {
    // do something
}

si vous voulez quelque chose de plus compliqué, pensez à regex ou utilisez le plugin de validation qui s'en charge pour vous

wiifm
la source
6
vous n'avez pas besoin de> 0 dans ce cas pour autant que je sache. si la longueur est 0, ce sera comme si (0), et la condition échouera.
icarus
ou simplement si (inp.val ())
ejaenv
95
var inp = $("#txt").val();
if(jQuery.trim(inp).length > 0)
{
   //do something
}

Supprime les espaces blancs avant la vérification. Si l'utilisateur n'a entré que des espaces, cela fonctionnera toujours.

Grimmy
la source
3
C'est la solution parfaite!
shasi kanth
1
@Grimmy J'aime le fait que vous ayez inclus trim. Cela rend cette réponse complète.
MadushM
6
Pourquoi ne pas être cohérent? Soit utiliser $ou jQuerymais pourquoi les deux?
user2019515
16
if ( $("#txt").val().length > 0 )
{
  // do something
}

Votre méthode échoue lorsqu'il y a plus d'un caractère d'espace dans la zone de texte.

rahul
la source
7
$('input:text').filter(function() { return this.value.length > 0; });
Tod
la source
7

Utilisez ce qui suit pour vérifier si la zone de texte est vide ou contient plus d'un espace blanc

var name = jQuery.trim($("#ContactUsName").val());

if ((name.length == 0))
{
    Your code 
}
else
{
    Your code
}
KAPIL SHARMA
la source
5
Y a-t-il une raison particulière d'avoir deux paires d'accolades là-dessus if?
Pedro Moreira
5
if ( $("#txt").val().length == 0 )
{
  // do something
}

J'ai dû ajouter le == pour que cela fonctionne pour moi, sinon il a ignoré la condition même avec une entrée de texte vide. Peut aider quelqu'un.

Ricky Odin Matthews
la source
4

Vous pouvez également utiliser

$value = $("#txt").val();

if($value == "")
{
    //Your Code Here
}
else
{
   //Your code
}

Essayez-le. Ça marche.

Ingénieur logiciel
la source
4

Le contrôle peut être fait comme ceci:

if (!!inp.val()) {

}

et encore plus court:

if (inp.val()) {

}
simhumileco
la source