سؤال

هل من الممكن وضع متعددة إذا كانت البيانات في جافا سكريبت ؟ إذا كان الأمر كذلك, أنا أقضي قدرا كبيرا من المتاعب مع البيان أدناه.كنت أتساءل إذا كنت يمكن وضع آخر إذا كان البيان في بين إذا (البيانات == 'صالح') و آخر?أريد أن أضيف آخر إذا كانت البيانات =='مفهوم') بين اثنين.

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();
    }
}
هل كانت مفيدة؟

المحلول

هل هذا ما تبحث عنه ؟

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

نصائح أخرى

إذا كنت تنوي البيانات متغير عقد العديد من القيم المختلفة ، قد تجد بيان التبديل أفضل تناسب احتياجاتك:

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

علما بأن كسر البيانات بعد كل حالة ، حالة متعددة البيانات يمكن استخدامها في حالة أن هناك مشكلة-الاتصال الافتراضي حالة من شأنها أن النار إذا كان أي شيء آخر المتطابقة.بيان التبديل ليس أكثر من نسخة أكثر إيجازا إذا كان البيان.

هل يمكن استخدام else if

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

لا علاقة لها السؤال لكن جوي طلبت توضيحا من استخدام وظيفة مجهول مع الموقت:

if (data == 'valid') {
    $("#file").slideUp(function () {
        $("#file").before('<div class="approvedMessage">WIN WIN WIN!</div>');
        setTimeout(function () {
            $("#file").slideDown();
            $('.approvedMessage').fadeOut();
        }, 5000);
    });
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top