下面的ajax函数失败,并显示一条错误消息,表示"错误" (非常有用):
var form = formInfo;
var url = $(formInfo).attr("action");
var data = $(formInfo).serialize();
$.ajax({
type: "post",
url: url,
data: data,
dataType: "text",
**cache: false,**
success: function (r) {
//do stuff here
}, error: function (r) {
//do some logging stuff here
}
});
对我来说没有意义的是,如果我通过控制台执行相同的ajax调用,它会成功发布。此外,如果我在ajax调用上设置断点并通过后端代码进行调试,那么帖子就会成功。关于可能导致此错误的任何想法?
编辑:似乎问题在于缓存,并添加缓存:false实际上修复了问题 编辑2:另一个问题是在ajax调用执行完毕之前调用了window.location,因此它被移动到成功调用的函数答案 0 :(得分:0)
当您提出请求时,您的表单可能尚未加载。
将您的代码包裹在ready
函数中,或者只是将您的javascript移到页面末尾。
$(document).ready(function () {
//your code here
});