diff --git a/resources/views/master.blade.php b/resources/views/master.blade.php
index 7eb6878ac..906e6cdd2 100644
--- a/resources/views/master.blade.php
+++ b/resources/views/master.blade.php
@@ -271,6 +271,7 @@
@stop
diff --git a/resources/views/payments/credit_card.blade.php b/resources/views/payments/credit_card.blade.php
index 07a4e8c2a..b0e9624c3 100644
--- a/resources/views/payments/credit_card.blade.php
+++ b/resources/views/payments/credit_card.blade.php
@@ -47,9 +47,14 @@
$(function() {
$('.payment-form').submit(function(event) {
- var $form = $(this);
+ if (NINJA.formIsSubmitted) {
+ event.preventDefault();
+ return false;
+ }
+ NINJA.formIsSubmitted = true;
// Disable the submit button to prevent repeated clicks
+ var $form = $(this);
$form.find('button').prop('disabled', true);
return true;
diff --git a/resources/views/payments/stripe/bank_transfer.blade.php b/resources/views/payments/stripe/bank_transfer.blade.php
index 35690db9b..2925b501a 100644
--- a/resources/views/payments/stripe/bank_transfer.blade.php
+++ b/resources/views/payments/stripe/bank_transfer.blade.php
@@ -9,7 +9,15 @@
$(function() {
var countries = {!! Cache::get('countries')->pluck('iso_3166_2','id') !!};
$('.payment-form').submit(function(event) {
- if($('[name=plaidAccountId]').length)return;
+ if ($('[name=plaidAccountId]').length) {
+ return false;
+ }
+
+ event.preventDefault();
+ if (NINJA.formIsSubmitted) {
+ return false;
+ }
+ NINJA.formIsSubmitted = true;
var $form = $(this);
diff --git a/resources/views/payments/stripe/credit_card.blade.php b/resources/views/payments/stripe/credit_card.blade.php
index 0d4286257..9ae035594 100644
--- a/resources/views/payments/stripe/credit_card.blade.php
+++ b/resources/views/payments/stripe/credit_card.blade.php
@@ -8,9 +8,16 @@