Как запустить sqPaymentForm на динамической странице? - PullRequest
0 голосов
/ 30 сентября 2018

Я динамически загружаю sqPaymentForm в существующую страницу, используя метод .ajax () в JQuery, но не могу получить форму для «инициирования» (я не уверен, что это правильный терминдля него).

Я знаю, что форма не инициируется, потому что поля формы не заполнены значениями-заполнителями И обратный вызов paymentFormLoaded не запускается.

Я пытался отложить определениеsqPaymentForm, чтобы убедиться, что DOM загружен с помощью

$(function(){
    var sqPaymentForm = new SqPaymentForm({...});
});

безрезультатно.Однако я могу подтвердить, что переменная sqPaymentForm определена, потому что я могу отправить ее на консоль с

console.log(sqPaymentForm);

, где я могу затем проверить ее, но она все еще не "инициализируется".

Я подозреваю, что мне нужно будет вызвать определенный под-метод класса SqPaymentForm, но я не знаю, нахожусь ли я даже на правильном пути.

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 01 октября 2018

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

Примеры здесь можно найти в разделе по устранению неполадок руководства по установке.

Кроме того, если у вас уже есть JavaScript SqPaymentForm на странице, но вы не хотите, чтобы он автоматически создавался при загрузке страницы, вы можете установить параметр конфигурации для autoBuild: false.

...