Функция для захвата значения и сохранения его в переменной


Мне нужно записать значение, отображаемое на веб-сайте для пользователя, а затем сохранить его в переменной. В идеале я хотел бы сделать это в functions.php .

Более конкретно, мы используем динамическую замену номера телефона на сайтах, и мы хотели бы знать, какой номер телефона отображается пользователю, когда он отправляет контактную форму (через формы гравитации).

Я могу записать номер телефона в класс или идентификатор, но изо всех сил пытаюсь понять, как написать функция для преобразования этого значения в переменную.

Я отправил свой вопрос в Гравитационные формы, но они не помогут. Спасибо.

Author: Erin M., 2017-08-21

2 answers

У меня была аналогичная задача с контактной формой 7, мой подход состоял в том, чтобы добавить скрытое поле в форму в CF7, а затем написать jQuery, чтобы присвоить значение скрытому полю, когда страница будет готова.

<script>
    jQuery(document).Ready(function(){
        document.getElementById('hiddeninputID').value = document.getElementById('cphone').value;
    });
</script>

Использование приведенного выше скрипта - самый простой способ сделать то, чего вы хотите достичь, использование PHP будет работать, но для этого может потребоваться обновление кода PHP вместе с регулярными обновлениями гравитационных форм. Сценарий не повлияет на скорость страницы и всегда должен быть совместим. Заменить hiddeninputID на идентификатор добавленного вами поля ввода

Обновление:

Чтобы принять во внимание приведенный пример:

<script>
    jQuery(document).ready(function() {
        var mmPhone = document.getElementById("mm-cphone").innerHTML;

        jQuery("#input_4_10").val(mmPhone);
        jQuery("#input_4_11").val(mmPhone);
    });
</script>
 0
Author: Daniel, 2017-08-24 15:26:43

Я не знаю, как вы отображаете номер телефона, но я думаю, что вы можете сохранить необходимое значение, используя gform_pre_submission крючок из гравитационной формы. Сначала добавьте некоторые скрытые входные данные, а затем вы можете изменить значение поля непосредственно в functions.php . Пример из документов:

add_action( 'gform_pre_submission', 'pre_submission_handler' );
function pre_submission_handler( $form ) {
    $_POST['input_14'] = 'new value for field 14';
}

Обновление: Вы не можете получить номер телефона напрямую на php. Вам нужен некоторый код jQuery, чтобы работать над ним. Что-то вроде телефона var.

var phone = $('#cphone').text();
$('<some id of the hidden field>').val(phone);

Было бы лучше использовать атрибуты данных для хранения дополнительные данные для элементов DOM.

 0
Author: Kort, 2017-08-21 19:54:30