[英]Run PHP script from jQuery then submit form
提交consent
,我需要運行一個PHP腳本。 腳本運行后,我想照常提交consent
。
我以為類似於以下內容的方法將起作用:
$(document).on('submit', 'form#consent', function(e) {
e.preventDefault();
$.get('http://www.domain.co.uk/test.php', function() {
console.log('returned');
$('form#consent').submit();
});
});
這將導致submit
事件循環,因為您的事件偵聽器將總是一遍又一遍地觸發。 改用one
,只聽第一個提交:
$('form#consent').one('submit', function(e) {
e.preventDefault();
$.get('http://www.domain.co.uk/test.php', function() {
console.log('returned');
$('form#consent').submit();
});
return false;
});
防止比賽條件和其他問題的另一個想法是,不要在表單中使用“ submit
按鈕。 只需使用普通按鈕,然后讓js進行submit
。
// <button class="send">submit form</button>
$('form#consent button.send').one('click', function() {
$.get('http://www.domain.co.uk/test.php', function() {
$('form#consent').submit();
});
});
$('#form').on('beforeSubmit', function(e) {
//your code
return false;
}).on('submit', function(e){
e.preventDefault();
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.