javascript — Jquery Confirm с формой Laravel не работает

У меня есть этот код Jquery:

<script type="text/javascript">
$('.blog-form').submit(function (e) {
e.preventDefault();
var blog_form = $(this);

bootbox.confirm("Are you sure?", function (result) {
if (result) {
blog_form.submit();
}
});
});
</script>

И в моей форме Laravel:

{!! Form::open(['action' => ['Test\\TestController@destroy', $thread->id], 'method' => 'delete',  'class' => 'blog-form']) !!}
{!! Form::submit('Delete', ['class' => 'btn btn-danger']) !!}
{!! Form::close() !!}

Если я нажму кнопку подтверждения, появится сообщение о подтверждении. Если я нажимаю на «cancle», подтверждение, конечно, исчезнет. итак … Если я нажму кнопку «ОК», то подтверждающее сообщение исчезнет, ​​но в то же время появится известное подтверждающее сообщение. снова и снова. Поэтому я не могу нажать Ok, не получив еще одно подтверждающее сообщение. Я еще не смог решить эту проблему. Спасибо за любую помощь 🙂

0

Решение

Проблема в том, что вы звоните одинаково submit() функция, которую вы перехватываете в jQuery. Один Способ предотвратить это, используя флаг.

<script type="text/javascript">
var confirmed = false;
$('.blog-form').submit(function (e) {
if(confirmed){
return;
}
e.preventDefault();
var blog_form = $(this);

bootbox.confirm("Are you sure?", function (result) {
if (result) {
confirmed = true;
blog_form.submit();
}
});
});
</script>
1

Другие решения

Других решений пока нет …