Formulardaten können nicht auf Safari/Firefox iOS gesendet werden
P粉520204081
P粉520204081 2024-04-04 12:53:48
0
1
514

Dies funktioniert auf allen Plattformen außer Safari/Firefox unter iOS:

jQuery("#gform_1").one('submit', function(event) {
  const form = document.getElementById("gform_1");
  const firstName = document.getElementById('input_1_1').value;
  const lastName = document.getElementById('input_1_2').value;
  const phoneNumber = document.getElementById('input_1_3').value;
  const email = document.getElementById('input_1_4').value;

  const formData = {
    firstName: firstName,
    lastName: lastName,
    phoneNumber: phoneNumber,
    email: email
  };

  jQuery.ajax({
    url: 'https://www.example.com/submissions.php',
    type: 'POST',
    data: formData,
    success: function(response) {
      console.log("Success!", response);
    },
    error: function(xhr, status, error) {
      console.error("Error!", error);
      console.log(xhr.responseText);
    }
  });
});

console.error("错误!", error) ist leer. Es heißt „Fehler!“. console.log(xhr.responseText) ist ebenfalls leer. Ich glaube nicht, dass es sich hierbei um ein COR-Problem handelt, da Submits.php auf demselben Server/in derselben Domäne wie das Formular gehostet wird.

P粉520204081
P粉520204081

Antworte allen(1)
P粉340264283

我需要防止Default。

jQuery("#gform_1").one('submit', async function(event) {
  event.preventDefault();
  const form = document.getElementById("gform_1");
  const firstName = document.getElementById('input_1_1').value;
  const lastName = document.getElementById('input_1_2').value;
  const phoneNumber = document.getElementById('input_1_3').value;
  const email = document.getElementById('input_1_4').value;

  const formData = {
    firstName: firstName,
    lastName: lastName,
    phoneNumber: phoneNumber,
    email: email
  };
  const request = await new Promise((resolve, reject) => {
    jQuery.ajax({
      url: 'https://www.example.com/submissions.php',
      type: 'POST',
      data: formData,
      success: function(response) {
        console.log("Success!", response);
        resolve();
      },
      error: function(xhr, status, error) {
        console.error("Error!", error);
        console.log(xhr.responseText);
        reject(error);
      }
    });
  });
  await request;
  console.log("AJAX request completed!");
});
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage