[英]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.