diff --git a/resources/views/master.blade.php b/resources/views/master.blade.php
index 7eb6878acfdd..906e6cdd2b4c 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 07a4e8c2a91e..b0e9624c3b41 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 35690db9bb6e..2925b501ac94 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 0d428625736e..9ae03559466d 100644
--- a/resources/views/payments/stripe/credit_card.blade.php
+++ b/resources/views/payments/stripe/credit_card.blade.php
@@ -8,9 +8,16 @@