Предупреждение о проблеме

У меня есть кнопка, на которой, когда пользователь нажимает, чтобы удалить проект на сайте, появляется подтверждение, я использую alerttify.js, для этого у меня есть кнопка и т. Д., Но при нажатии кнопки "Удалить" появляется окно подтверждения, которое автоматически удаляет проект и исчезает до Я могу либо нажать кнопку ОК, чтобы подтвердить или отменить..?

вот HTML

<button type="submit" class="btn btn-link btn-sm" Onclick="return ConfirmDelete();" style="margin:5px;"></button>

вот код JavaScript

 function ConfirmDelete()
{
   alertify.confirm("This is a confirm dialog", function (ev) {
        ev.preventDefault();
        alertify.success("You've clicked OK");
    }, function(ev) {
        ev.preventDefault();
        alertify.error("You've clicked Cancel");
    });
}

как я могу предотвратить это?

1 ответ

Решение

Вы не можете предотвратить отправку формы в этом случае, потому что пользовательское подтверждение не блокирует асинхронный диалог. Вы можете остановить это, всегда возвращая false и отправка формы вручную (программно) в случае Ok нажатие кнопки:

function ConfirmDelete(button) {
  alertify.confirm("This is a confirm dialog", function() {
    button.form.submit()
    // alertify.success("You've clicked OK", function() {
    //   button.form.submit()
    // });
  }, function() {
    alertify.error("You've clicked Cancel");
  });

  return false;
}

Для этого обязательно передайте ссылку на кнопку в вашу функцию:

<button type="submit" onclick="return ConfirmDelete(this)">ConfirmDelete</button>
Другие вопросы по тегам