這適用於除 iOS 上的 Safari/Firefox 之外的所有平台:
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)
為空。它說“錯誤!”。 console.log(xhr.responseText) 也是空白的。我不認為這是 COR 問題,因為 Submits.php 與表單託管在同一伺服器/網域上。
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!"); });