2010-02-18 112 views

回答

11

ajax function has a beforeSend event,您可以使用提交表单前显示对话框。

如果对话框指示不应该提交表单,那么您将从函数返回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 form plugin因为它简化了通过AJAX为表单提交表单的过程,并且使用与ajax的调用相同的所有参数。

+0

我已经使用了jquery表单插件,但遇到了一些问题。我发现它更容易(不是更快的笑)做没有插件的事情。感谢您的答案,这正是我正在寻找的。什么是(请求)? – user272899 2010-02-18 18:51:31

+0

@ user272899:请求参数包含将用于发出请求的XMLHTTPRequest实例。你不一定需要它,但它传递给函数。 – casperOne 2010-02-18 19:34:28

+0

@ user272899:另外,如果你想要,详细说明jQuery表单插件问题。我已经写了一些关于在这里使用jQuery表单插件和验证(你必须查找的东西)的信息:http://stackoverflow.com/questions/1996125/how-to-use-jquery-validation-plugin-用的元数据和最jQuery的表单的插件-WI – casperOne 2010-02-18 19:35:29

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

呼叫,当你想要做删除此功能。