2
votes

Si la chaîne entrée dans l'entrée correspond, elle révèle un élément HTML avec javascript

J'ai actuellement le code suivant. Lorsqu'une chaîne entrée dans le champ de saisie de "#gotthekey" correspond à la valeur du code, elle révèle un élément div appelé "codebox".

Ma question est de savoir comment pourrais-je faire fonctionner cela pour plusieurs chaînes, par exemple "1234" "4231", "2341" ... etc? Dois-je utiliser un tableau quelconque?

Votre aide serait très appréciée, mon expérience avec js à la minute est limitée.

<code>
    $j(document).ready(function() {
        $j("#gotthekey").keyup(function() {
            if (this.value == "1234567890") {
                $j(".codebox").css({'display' : 'block','float' : 'left','margin-left' : '16%'
                });
                $j(".gotthekey").css("display", "none");
                }
            else {
                $j(".codebox").css("display", "none");
                $j(".gotthekey").css("display", "block");
            }
        });
    });
</code>

p >


0 commentaires

4 Réponses :


1
votes

vous pouvez mettre toutes les chaînes dans un tableau "arr" et utiliser arr.indexOf (val) pour voir si la valeur correspond à l'une des chaînes


0 commentaires

0
votes

Placez les chaînes que vous souhaitez archiver dans le tableau.

Utilisez: arrayOfStringsToCheck.includes ('string') renvoie vrai ou faux


0 commentaires

2
votes

Vous pouvez placer les chaînes dans un tableau et utiliser inclut :

if (['1234', '4231', '2341'].includes(this.value))


1 commentaires

Soyez prudent, car peu de navigateurs prennent encore en charge Array.prototype.includes



0
votes

La bonne approche dans votre code sera de remplacer

checkValue(val) {
    const stringSet = new Set([1234, 4321, 2134]);
    return stringSet.has(val)
}

par quelque chose

 if (checkValue(this.value))

et votre valeur de contrôle peut utiliser set pour de meilleures performances

 if (this.value == "1234567890")

plus sur le plateau: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set


3 commentaires

Merci les gars, appréciez vraiment l'expertise. Une fois stocké dans le tableau / ensemble, comment utiliserais-je le résultat pour révéler un élément div caché? C'est là que je suis coincé.


La fonction ci-dessus retournera Boolean et si une valeur est trouvée, votre code doit s'exécuter et afficher la boîte de code car elle fonctionne maintenant


Je pense que c'est ce que je recherche alors merci Shadab. La seule chose est que j'obtiens une erreur de jeton inattendue dans l'ensemble que vous avez suggéré ci-dessus et je ne peux pas voir ce qui en est la cause. Toutes mes excuses pour ma noblesse!