Javascript Ajax成功函数
我正在使用Ajax post将表单数据提交到服务器,进行验证,然后根据数据是否有效以及是否可以存储返回消息。不过,我在ajax帖子中的成功函数没有运行。以下是ajax帖子和成功消息的显示:Javascript Ajax成功函数,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在使用Ajax post将表单数据提交到服务器,进行验证,然后根据数据是否有效以及是否可以存储返回消息。不过,我在ajax帖子中的成功函数没有运行。以下是ajax帖子和成功消息的显示: jQuery.ajax({ type:"post", dataType:"json", url: myAjax.ajaxurl, data: {action: 'submit_data', info: info}, success: functio
jQuery.ajax({
type:"post",
dataType:"json",
url: myAjax.ajaxurl,
data: {action: 'submit_data', info: info},
success: function(data) {
successmessage = 'Data was succesfully captured';
}
});
$("label#successmessage").text(successmessage);
$(":input").val('');
return false;
但标签上不会显示任何消息。我试着在代码中将successmessage变量设置为一个设置值,它显示得很好,所以我的success函数肯定有问题,我就是看不到什么?我还尝试如下设置错误回调:
error: function(data) {
successmessage = 'Error';
},
但是仍然没有显示任何消息。这是因为Ajax是异步的,当服务器应答客户机时,
成功
或错误
函数稍后将被调用。因此,只需根据结果将部分移动到成功函数中,如下所示:
jQuery.ajax({
type:"post",
dataType:"json",
url: myAjax.ajaxurl,
data: {action: 'submit_data', info: info},
success: function(data) {
successmessage = 'Data was succesfully captured';
$("label#successmessage").text(successmessage);
},
error: function(data) {
successmessage = 'Error';
$("label#successmessage").text(successmessage);
},
});
$(":input").val('');
return false;
上面给出的答案无法解决我的问题。因此,我将async更改为false以获取警报消息
jQuery.ajax({
type:"post",
dataType:"json",
async: false,
url: myAjax.ajaxurl,
data: {action: 'submit_data', info: info},
success: function(data) {
alert("Data was succesfully captured");
},
});
可能重复“我的ajax帖子中的成功函数没有运行”,所以请检查网络选项卡中的错误检查网络选项卡,它显示帖子运行正常