Mam formularz wielostronicowy.Gravity Forms - Uzyskaj aktualny numer strony
Chciałbym wykonać niestandardowy JavaScript na ostatniej stronie tego formularza. Teoretycznie wszystko, co muszę zrobić, to pobrać aktualny numer strony i napisać warunkową.
Proste, prawda? Najwyraźniej nie.
Mój oryginalny obejście było tak:
if ($('gform_page').last().css('display') !== 'none') {
// perform custom scripts now that the last
// Gravity Form page is being shown
}
ale $('...').css('display')
powraca undefined
na każdy elementem Próbowałem to na w formie. Własne skrypty były uruchamiane za każdym razem, gdy użytkownik kliknął przycisk "Dalej". Bez cygara.
Następnie po przejrzeniu the Gravity Forms documentation znalazłem dwa przydatne zdarzenia: gform_post_render
i gform_page_loaded
.
Jednak dokumentacja nie zawiera instrukcji dotyczących dostępu do parametrów.
jQuery(document).bind('gform_page_loaded', function(event, form_id, current_page){
console.log(current_page);
// returns nothing when loaded in the footer
// returns [Object, object] when placed in an HTML field in the form
});
Ponadto nie mając prawidłowy kod, ja też podejrzewam, nie mam kod w odpowiednim miejscu jak również bezskutecznie próbowała następujące w functions.php aw header.php (as the documentation suggests) :
<?php
function enqueue_custom_script($form, $is_ajax){
if ($is_ajax) :
echo '<script>console.log(current_page);</script>';
endif;
}
add_action("gform_enqueue_scripts", "enqueue_custom_script", 10, 2);
?>
Pytanie:
Jaki kod muszę pobrać aktualny numer strony, a co ważniejsze, gdzie mogę umieścić ten kod?
I rzeczywiście pomyśleć nad odpowiedzią McNab jest lepszy. :) –