我正在使用Ajax帖子将表单数据提交到服务器,验证,然后根据数据是否有效并可以存储返回消息.我的ajax文章中的成功功能不会运行.这是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); $(":input").val(''); return false;
标签上没有显示消息.我尝试将successmessage变量设置为代码中的一个设置值,它显示正常,所以我的成功功能一定有问题,我看不到什么?我也尝试设置错误回调,如下所示:
error: function(data) { successmessage = 'Error'; },
但仍然没有显示消息.
解决方法
这是因为Ajax是异步的,当服务器回答客户端时,将会调用成功或错误功能.所以,只需将部件取决于你的成功功能,就像这样:
jQuery.ajax({ type:"post",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;