6

我正在使用 jquery ajax 从表中删除客户。在提交表单之前如何显示确认框?我更喜欢使用 jQuery 的对话框。

我以前见过这样的问题,但没有一个有帮助。

这是我的代码:

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

2 回答 2

11

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 
});

如果您正在为表单发布 POST(看起来确实如此),我强烈建议您查看jQuery 表单插件,因为它极大地简化了通过 AJAX 调用提交表单的过程,并使用了所有调用相同的参数ajax

于 2010-02-18T18:35:59.267 回答
1

您需要创建一个函数,在检查用户输入后进行调用。

例如:

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");
}

当你想要删除时调用这个函数。

于 2010-02-18T18:36:32.730 回答