Javascript 提交JQuery表单$.post()成功时处理显示消息

Javascript 提交JQuery表单$.post()成功时处理显示消息,javascript,php,jquery,Javascript,Php,Jquery,我在jquery中提交了一个带有$.post()的表单 $.post("testpage.php", $("#payment-form").serialize()) 这篇文章本身工作得很好,但是当文章完成并且成功的时候,页面会做一些其他的事情,比如显示一条感谢信息等等。我只需要知道将调用放在何处以显示消息。我不知道从post返回的成功消息会到哪里。您可以为.post()指定第三个参数,即“成功”回调。它是一个在.post执行成功时调用的函数 $.post("testpage.php", $("

我在jquery中提交了一个带有$.post()的表单

$.post("testpage.php", $("#payment-form").serialize())

这篇文章本身工作得很好,但是当文章完成并且成功的时候,页面会做一些其他的事情,比如显示一条感谢信息等等。我只需要知道将调用放在何处以显示消息。我不知道从post返回的成功消息会到哪里。

您可以为.post()指定第三个参数,即“成功”回调。它是一个在.post执行成功时调用的函数

$.post("testpage.php", $("#payment-form").serialize(), function() { alert('post was successful!')})

来源:

您可以为.post()指定第三个参数,即“成功”回调。它是一个在.post执行成功时调用的函数

$.post("testpage.php", $("#payment-form").serialize(), function() { alert('post was successful!')})
来源:

简而言之,如下:

$.post("testpage.php", $("#payment-form").serialize(), function () {
    // Start partying here.
}).fail(function() {
    // Handle the bad news here.
})
简而言之,就是这样:

$.post("testpage.php", $("#payment-form").serialize(), function () {
    // Start partying here.
}).fail(function() {
    // Handle the bad news here.
})

或者,您可以使用,如下所示:

// Create POST request
var paymentPost = $.post("testpage.php", $("#payment-form").serialize());

// Assigned deferred objects
// "data" refers to the data, preferably in JSON format, returned by testpage.php
paymentPost
.done(function(data) {
    // Success
    // e.g. display thank you message, redirect to a payment successful page...
})
.fail(function(data) {
    // If error
    // e.g. display error message(s)
})
.always(function() {
    // Will always fire as long as POST request is submitted and completed
});

p/s:需要注意的是,像
.success()
.error()
这样的jqXHR方法是不推荐使用的。为了准备最终删除它们,您应该遵守延迟对象的新命名法;)

或者,您可以使用,如下所示:

// Create POST request
var paymentPost = $.post("testpage.php", $("#payment-form").serialize());

// Assigned deferred objects
// "data" refers to the data, preferably in JSON format, returned by testpage.php
paymentPost
.done(function(data) {
    // Success
    // e.g. display thank you message, redirect to a payment successful page...
})
.fail(function(data) {
    // If error
    // e.g. display error message(s)
})
.always(function() {
    // Will always fire as long as POST request is submitted and completed
});

p/s:需要注意的是,像
.success()
.error()
这样的jqXHR方法是不推荐使用的。为了准备最终删除它们,您应该遵守延迟对象的新命名法;)

“很抱歉……您的请求是终端。”
$.post()
没有任何错误回调,您需要使用
.fail()
。然后(成功,错误)
来处理it@A.Wolff,你说得对。。。我的手指假设它是错误的,请选中编辑“很抱歉……您的请求是终端。”
$.post()
没有任何错误回调,您需要使用
.fail()
。然后(成功,错误)
来处理it@A.Wolff,你说得对。。。我的手指想错了,检查editCome伙计,你已经在jquery文档的正确页面上了。。在下次提问之前,试着多读一点。拜托,伙计,你已经在jquery文档的正确页面上了。。下次提问之前,请多读一点。谢谢!我通读了文档,只是不明白如何使用successhandler。谢谢你把它清理干净!非常感谢。我通读了文档,只是不明白如何使用successhandler。谢谢你把它清理干净!很有趣,谢谢你!我真的很感谢您对各种选择的解释
.fail()
不是不推荐使用的,但是
.error()
,无论如何+1是有用的答案有趣的谢谢!我真的很感谢您对各种选择的解释
.fail()
不是不推荐的,但是
.error()
,无论如何+1是有用的答案