Heim > Fragen und Antworten > Hauptteil
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粉3402642832024-04-05 09:36:07
我需要防止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!"); });