jqueryajax请求仅在chrome中有效,而在其他浏览器中无效
我有下面的代码,可以在报告成功通过电子邮件发送给用户时提醒他们。但是我注意到,该警报仅在chrome浏览器中显示,而在其他浏览器中不显示。我想不出是怎么回事。请帮帮我。多谢各位jqueryajax请求仅在chrome中有效,而在其他浏览器中无效,jquery,Jquery,我有下面的代码,可以在报告成功通过电子邮件发送给用户时提醒他们。但是我注意到,该警报仅在chrome浏览器中显示,而在其他浏览器中不显示。我想不出是怎么回事。请帮帮我。多谢各位 $("#rpt_email").click(function(event) { var ajaxRequest; /* Stop form from submitting normally */ event.preventDefault(); /* Send the data using post and
$("#rpt_email").click(function(event) {
var ajaxRequest;
/* Stop form from submitting normally */
event.preventDefault();
/* Send the data using post and put the results in a div */
ajaxRequest= $.ajax({
url: "emailReport.php",
type: "post",
data: { 'summary_ttl_value': "5.55%"}
});
ajaxRequest.done(function (){
alert("The report has been sent to your email");
});
ajaxRequest.fail(function (){
alert("The report could not be sent");
});
});
尝试在请求中使用success函数,而不是事后使用“.done”。大概是这样的:
$.ajax({
url: "emailReport.php",
type: "post",
data: { 'summary_ttl_value': "5.55%"},
success: function(response) {
getUserPreference(response);
}
});
或者,我注意到您的.done函数包含在click处理程序中。尝试将其移到该函数之外,就像使用.fail函数一样。这可能是因为它只在Chrome上工作,因为Chrome是一款速度更快的浏览器,能够在处理单击事件/ajax请求之前访问.done代码 您使用的是什么版本的JQuery?可能是缓存问题,不是吗?!那么FF控制台中的错误呢?因为成功被更广泛地接受,而且如果我没记错的话,.done直到JQuery 1.5才实现,这就是为什么我问他使用的是什么版本。这很有效,谢谢。但是为什么我的解决方案不起作用呢?您使用的是什么版本的JQuery?我明白了,它的版本问题。我的版本是1.11.3