Итак, у меня есть обработчик формы ajax, который удаляет способ оплаты.Когда пользователь нажимает «удалить», отображается всплывающее окно с подтверждением.Однако, даже если пользователь нажимает кнопку «отменить», он все равно запускает форму и удаляет способ оплаты.Что мне нужно изменить?
HTML:
<form class="sg-inline-form" method="post" action="">
<input type="hidden" name="sg_customer_id" value="customerID">
<input type="hidden" name="sg_card_id" value="cardID">
<a href="#" class="delete-card" onclick="return confirm('Are you sure?')">Delete</a>
</form>
AJAX:
$('.delete-card').click(function() {
$('.ajax-loading').show();
const $form = $(this).parent();
const customer = $form.find('input[name=sg_customer_id]').val();
const card = $form.find('input[name=sg_card_id]').val();
$.ajax({
url: sg_obj.ajaxurl,
data: {
'action': 'sg_delete_payment_source',
'customer' : customer,
'card' : card
},
success:function(data) {
// This outputs the result of the ajax request
$('.ajax-loading').hide();
$('#ajax-messages').addClass('alert alert-success').html('The payment source has been deleted. <a href=".">Refresh Page</a>');
},
error: function(errorThrown){
$('.ajax-loading').hide();
$('#ajax-messages').addClass('alert alert-danger').html('An error occurred.');
}
});
});