Ad
Run PHP Script From JQuery Then Submit Form
On submit of a the consent
form, I need to run a PHP script. Once the script has run I want to submit the consent
form as usual.
I had thought something similar to the following would work:
$(document).on('submit', 'form#consent', function(e) {
e.preventDefault();
$.get('http://www.domain.co.uk/test.php', function() {
console.log('returned');
$('form#consent').submit();
});
});
Ad
Answer
This would result in a loop of submit
events, because your event listener will always gets triggered over and over again. Use one
instead, to only listen to the first submit:
$('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;
});
Another idea to prevent race conditions and other problems, don't use a submit
button in your form. Just use a normal button and let js do the 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();
});
});
Ad
source: stackoverflow.com
Related Questions
- → How to update data attribute on Ajax complete
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → Octobercms Component Unique id (Twig & Javascript)
- → Passing a JS var from AJAX response to Twig
- → Laravel {!! Form::open() !!} doesn't work within AngularJS
- → DropzoneJS & Laravel - Output form validation errors
- → Import statement and Babel
- → Uncaught TypeError: Cannot read property '__SECRET_DOM_DO_NOT_USE_OR_YOU_WILL_BE_FIRED' of undefined
- → React-router: Passing props to children
- → ListView.DataSource looping data for React Native
- → Can't test submit handler in React component
- → React + Flux - How to avoid global variable
- → Webpack, React & Babel, not rendering DOM
Ad