Je veux supprimer une classe lorsque rien n'est à l'intérieur de l'élément d'entrée code> code>, comme dans Google, lorsque votre entrée de recherche est vide, il ne fera pas d'afficher des suggestions.
J'ai déjà essayé cela Mais cela ne fonctionne pas: p> Comment puis-je le réparer? p> p>
3 Réponses :
Essayez d'utiliser si (x == '' ') code> attrape des cordes vides, pas null. p>
si (! x) code> à la place (voit si x est null, une chaîne non définie ou vide). P>
S'il ne veut pas supprimer la classe quand il y a une chaîne vide que le code échoue
@ F.Bernal L'Asker indique clairement qu'il veut le supprimer lorsque l'entrée est vide.
Si vous souhaitez vérifier si l'entrée est null ou non définie, comparez simplement avec ces valeurs. Une chaîne vide (x = '') est évaluée à true si vous le faites! X. Donc, si vous voulez seulement vérifier, la valeur est null ou non définie, faites-la.
$(".sc").keyup(function ()
{
const x=$(this).val();
$.post('search.php',{search:x},function (checkSearch)
{
x === null || x === undefined
? $(".search").removeClass("searchOn")
: $(".search").addClass("searchOn")
$(".search").html(checkSearch);
}
});
je l'ai résolu
J'aurais dû utiliser === code> au lieu de == code>
'' code> n'est pas null. C'est une chaîne vide.x == '' ne va pas attraper nul ou indéfini. voir Stackoverflow.com/Questtions/5515310/...
$ (". recherche"). Removeclass () ("Searchon"); code> est également une erreur logique. Retirez levide () code>Dupliqué possible de jQuery: vérifier si la valeur de Un champ est null (vide)