Question

Est-il possible de mettre plusieurs instructions IF en Javascript? Si tel est le cas, la déclaration ci-dessous me cause pas mal de problèmes. Je me demandais si vous pouviez insérer une autre instruction IF entre si (données == 'valide') ET autre ? Je souhaite ajouter un autre if data == 'concept') entre les deux.

if (data == 'valid') {
    $("#file").slideUp(function () {
        $("#file").before('<div class="approvedMessage">WIN WIN WIN!</div>');
        setTimeout(ApprovedProof, 5000);
    });

    function ApprovedProof() {
        $("#file").slideDown();
        $('.approvedMessage').fadeOut();
    }

}
else {

    $("#file").slideUp(function () {
        $("#file").before('<div class="deniedMessage">NO NO NO!</div>');
        setTimeout(DeniedProof, 5000);
    });

    function DeniedProof() {
        $("#file").slideDown();
        $('.deniedMessage').fadeOut();
    }
}
Était-ce utile?

La solution

est-ce ce que vous cherchez?

if(data == 'valid') {
    // block 1
} else if (data == 'concept') {
    // block 2
} else {
    // block 3
}

Autres conseils

Si vous souhaitez que la variable data contienne de nombreuses valeurs différentes, vous pouvez estimer que l'instruction switch convient mieux à vos besoins:

switch(data)
{
  case "valid":
     //stuff
     break;
  case "concept":
     //stuff
     break;
  case "this": case "that":
     //more stuff
     break;
  default:
     break;
}

Notez que les instructions de séparation après chaque cas, que plusieurs instructions de cas peuvent être utilisées par condition et qu'il existe un cas par défaut, appel de cause, qui se déclenchera si rien d'autre ne correspond. L’instruction switch n’est rien de plus qu’une version plus concise de l’instruction If.

vous pouvez utiliser sinon si

if (data == "valid") {
    // stuff here
} else if (data == "concept") {
    // more stuff
} else {
    // other stuff
}

Sans rapport avec la question, Joey a demandé des explications sur l'utilisation d'une fonction anonyme avec son minuteur:

if (data == 'valid') {
    $("#file").slideUp(function () {
        $("#file").before('<div class="approvedMessage">WIN WIN WIN!</div>');
        setTimeout(function () {
            $("#file").slideDown();
            $('.approvedMessage').fadeOut();
        }, 5000);
    });
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top