Maison > Questions et réponses > le corps du texte
Cela fonctionne sur toutes les plateformes sauf Safari/Firefox sur 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)
est vide. Il dit "Erreur!". console.log(xhr.responseText) est également vide. Je ne pense pas qu'il s'agisse d'un problème COR puisque Submits.php est hébergé sur le même serveur/domaine que le formulaire.
P粉3402642832024-04-05 09:36:07
Je dois empêcher 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!"); });