2017-06-20 77 views
0

下面的代碼可以在我的所有測試中使用,並且大部分時間都可以使用,但它不會爲所有訪問者啓動。onsubmit事件並不總是有效

jQuery(document).ready(function(){ 
    jQuery('#formane').on('submit', function(){ 
    jQuery.post('/storeit.php', jQuery(this).serialize(), function(){ 
     console.log('success'); 
    }).fail(function(){ 
     console.log('error'); 
    }); 
    }); 
}); 

storit.php頁面接收數據並在表單發佈到salesforce之前將其扔到數據庫中。我已經嘗試完全刪除jQuery,使用onsubmit與JavaScript函數。

我得到大約15%的表單帖子,只是不激發代碼。它們涵蓋瀏覽器,操作系統和設備。

+0

這裏沒有足夠的信息來診斷這一點。 –

+0

無法保證ajax請求在表單重定向頁面之前甚至有機會觸發 – Musa

+0

您還想看什麼? – Cymbal

回答

0

你應該禁用正常的表單提交,因爲當它重新加載頁面時,它將取消AJAX請求。相反,請在成功功能中提交表單。

jQuery(document).ready(function(){ 
    jQuery('#formane').on('submit', function(e){ 
    e.preventDefault(); 
    jQuery.post('/storeit.php', jQuery(this).serialize(), function(){ 
     console.log('success'); 
     $("#formane")[0].submit(); 
    }).fail(function(){ 
     console.log('error'); 
    }); 
    }); 
}); 
+0

這樣做。謝謝。 – Cymbal