Как показать диалоговое окно подтверждения перед отправкой формы с помощью метода jQuery ajax?

Я использую jQuery ajax для удаления клиента из таблицы. Как мне показать окно подтверждения перед отправкой формы? Я бы предпочел использовать диалог jQuery.

Я видел такие вопросы раньше, но ни один из них не помог.

Это мой код:

    $.ajax({
        type: "POST",
        url: "delete/process.php",
        data: "delcustomerid="+ delcustomerid,
        success: refreshTable
    });

2 ответов


на функция ajax имеет beforeSend событие который можно использовать для отображения диалога перед отправкой формы.

Если диалоговое окно указывает, что форма не должна быть отправлена, то вы вернете false из своей функции, чтобы отправка формы не состоялась.

в вашем случае вы сделали бы следующее:

$.ajax({ 
    beforeSend: function (request) {
        // This is where you show the dialog.
        // Return false if you don't want the form submitted.
    },

    type: "POST", 
    url: "delete/process.php", 
    data: "delcustomerid="+ delcustomerid, 
    success: refreshTable 
});

Если вы выдаете сообщение для формы (которая, кажется, вы), я очень рекомендуем вам взглянуть на плагин формы jQuery как это упрощает процесс отправки форм через AJAX-вызовы для вас, и использует все те же параметры вызова ajax делает.


вам нужно создать функцию, которая делает вызов, который вы показываете после проверки ввода пользователем.

например:

function DeleteWithCheck() {
  if (confirm("Are you sure you want to delete customer "+delcustomerid.ToString()))
  {
    $.ajax({
      type: "POST",
      url: "delete/process.php",
      data: "delcustomerid="+ delcustomerid,
      success: refreshTable
    });
  }
  else
    alert("Aborted");
}

вызвать эту функцию, когда вы хотите удалить.