Test submitting this live demo form in real-time.
12345678910111213141516171819202122232425262728293031323334// Vanilla JavaScript AJAX Submissionconst form = document.getElementById('contact-form');form.addEventListener('submit', async (e) => {e.preventDefault();const submitButton = form.querySelector('button[type="submit"]');submitButton.disabled = true;submitButton.innerText = 'Submitting...';const formData = new FormData(form);try {const response = await fetch('https://api.formtruck.com/f/ft_YOUR_FORM_ID', {method: 'POST',body: formData,headers: {Accept: 'application/json',},});if (response.ok) {alert('Thank you! Your submission was successful.');form.reset();} else {const errorData = await response.json();alert('Error: ' + (errorData.message || 'Submission failed'));}} catch (err) {alert('Network error occurred. Please try again.');} finally {submitButton.disabled = false;submitButton.innerText = 'Submit';}});
Keep this field hidden via CSS. If a spam bot fills it out, Formtruck silently traps the submission into your spam folder.
Specify a custom thank-you page URL (e.g. https://yoursite.com/thank-you) for native HTML POST submissions.
Customize the email notification subject line (e.g. New VIP Client Inquiry).