Некоторые из моих полей ввода не отправляются - PullRequest
0 голосов
/ 08 мая 2019

Я использую Stripe для своего платежного шлюза. После того, как я запрашиваю и получаю токен, я пытаюсь отправить форму на свой сервер.

Проблема в том, только токен отправляет обратно. Я хочу поймать адрес электронной почты, а также. Когда я перехожу, все входные значения формы правильно устанавливаются при вызове form.submit().

Итак - мне интересно, что мне здесь нужно искать. Есть ли атрибут, который удерживает данные элемента от отправки? Я немного озадачен тем, почему единственное поле, возвращаемое на мой сервер, - это токен полосы.

Форма полностью заполнена, но после извлечения токена мне выдается что-то, что приводит к тому, что все остальное становится призраком.

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

Пожалуйста, не отмечайте, что я не достаточно конкретен - это настолько конкретно, насколько я могу понять, не бросая мег иерархии DOM на вас, ребята.

Заранее спасибо всем, кто может указать мне правильное направление.

1 Ответ

0 голосов
/ 08 мая 2019

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

var formPost = document.createElement("form");
    formPost.setAttribute('method','post');

  var eToken = document.createElement('input');
  eToken.setAttribute('type', 'hidden');
  eToken.setAttribute('name', 'stripeToken');
  eToken.setAttribute('value', token.id);
  formPost.appendChild(eToken);

    var eName = document.createElement('input');
  eName.setAttribute('type', 'hidden');
  eName.setAttribute('name', 'name');
  eName.setAttribute('value', document.getElementById("paxyz-name").value);
  formPost.appendChild(eName);

    var eEmail = document.createElement('input');
  eEmail.setAttribute('type', 'hidden');
  eEmail.setAttribute('name', 'email');
  eEmail.setAttribute('value', document.getElementById("paxyz-email").value);
  formPost.appendChild(eEmail);

    var ePhone = document.createElement('input');
  ePhone.setAttribute('type', 'hidden');
  ePhone.setAttribute('name', 'phone');
  ePhone.setAttribute('value', document.getElementById("paxyz-phone").value);
  formPost.appendChild(ePhone);

    var eZip = document.createElement('input');
  eZip.setAttribute('type', 'hidden');
  eZip.setAttribute('name', 'zip');
  eZip.setAttribute('value', document.getElementById("paxyz-zip").value);
  formPost.appendChild(eZip);

    document.body.appendChild(formPost);

  // Submit the form
  formPost.submit();
...