jQuery - Prüfen Sie die aktuellen Stand der radio-button ein und ausblenden, div

FRAGE: Wie würde ich überprüfen Sie den Wert eines radio-button onload aus, und wenn es ein bestimmter Wert ist, eine Aktion durchzuführen und basiert auf, der? Verwiesen wird am Ende von meinem code in der wenn - Anweisung.

AUSFÜHRLICHERE ERKLÄRUNG

So, ich weiß, der Titel klingt vertraut, um andere Fragen, aber ich habe ein wenig mehr zu engagieren und versuchen zu finden der beste Weg, sich ihm zu nähern. Also, in meiner Funktion homepageDisplayHandleSelection() ich zu verstecken/zeigen die Bereiche auf der Grundlage der Auswahl des radio-buttons aus, dass innerhalb .homepage_display Bereich. Dann, ich benutze grundsätzlich, dass die gleiche Funktionalität für eine andere Gruppe von radio-buttons innerhalb es genannt mainImageLinkHandleSelection und dann versteckt/zeigt Bereiche an, basierend auf der Auswahl. Ich kann wechseln zwischen den Static und Slide option ganz gut, aber die erste Ansicht (wenn Slideshow ist ausgewählt, wenn die Seite geladen wird) ist, dass es noch mit der sekundären radio-buttons mainImageLinkHandleSelection und es ist nicht, bis ich Sie aus der Slideshow option und zurück Static dass es korrigiert sich.

So, ich habe versucht, dies zu beheben (unten im Beispiel-code), indem Sie überprüft, ob der aktuelle radio-Wert, der überprüft wird, ist slideshow und wenn ja, Verstecke ich ein div namens main_link (die ist auch an jedem der Gebiete rund um den mainImageLinkHandleSelection divs). Ich weiß, meine Frage hat paar Teile, aber ich dachte, wenn jemand helfen könnte, es wäre ein Genie irgendwo da draußen 😉 vielen Dank für jegliche Hilfe!

jQuery(document).ready(function() {

    //Homepage Settings - Homepage Display
    //This function handles the radio clicks.
    function homepageDisplayHandleSelection() {
        var duration = 400;
        jQuery('.homepage_display').hide(duration);
        jQuery('.main_link').hide(duration);
        if (this.value === "slideshow") {
          jQuery('.homepage_display_slides').show(duration);     
        } else if (this.value === "static") {
          jQuery('.homepage_display_static').show(duration);     
        }
    }

    //Attach a click handler to the radios
    //and trigger the selected radio
    jQuery('#section-of_homepage_display :radio')
        .click(homepageDisplayHandleSelection)
        .filter(':checked').trigger('click');

    //Homepage Settings - Main Link Options
    //This function handles the radio clicks.
    function mainImageLinkHandleSelection() {
        var duration = 400;
        jQuery('.main_link').hide(duration);
        if (this.value === "external_url") {
          jQuery('.main_link_external').show(duration);     
        } else if (this.value === "wp_page") {
          jQuery('.main_link_page').show(duration);     
        }
          else if (this.value === "wp_post") {
          jQuery('.main_link_post').show(duration);     
        }
          else if (this.value === "wp_taxonomy") {
          jQuery('.main_link_category').show(duration);     
        }
    }

    //Attach a click handler to the radios
    //and trigger the selected radio
    jQuery("#section-of_main_image_link_option :radio")
        .click(mainImageLinkHandleSelection)
        .filter(":checked").trigger("click");


  //Make sure main image link option are hidden by default if slideshow option is selected
    if (jQuery('#section-of_homepage_display :radio :checked').val() === 'slideshow') {
      jQuery('.main_link').hide();
    }

});
tl;dr.. Sie wird sich wahrscheinlich mehr Antworten, wenn Sie Kochen Sie Ihre Frage zu den Grundlagen
Macht Sinn, das zu tun - vielen Dank, ich habe aktualisiert.

InformationsquelleAutor Zach | 2011-11-30

Schreibe einen Kommentar