为什么我总是有这么多麻烦......?因为我没有在我的other article解决这个问题,我决定的JavaScript只是代码的正确性入值...所以我有:Ajax.BeginForm的回调不起作用
OnSuccess="alert('ok')",
OnFailure="alert('failed')",
所以我的问题是,提交工作正常;一条记录被插入数据库,我得到一个回调......但我得到了错误的回调!即使插入记录,我也会失败。 heeeeelp!
为什么我总是有这么多麻烦......?因为我没有在我的other article解决这个问题,我决定的JavaScript只是代码的正确性入值...所以我有:Ajax.BeginForm的回调不起作用
OnSuccess="alert('ok')",
OnFailure="alert('failed')",
所以我的问题是,提交工作正常;一条记录被插入数据库,我得到一个回调......但我得到了错误的回调!即使插入记录,我也会失败。 heeeeelp!
好吧,我想通了几件事情:
您应该能够从响应读取数据弄清楚为什么它被认为是一个失败:
OnFailure="handleError",
...
function handleError(ajaxContext) {
var response = ajaxContext.get_response();
var statusCode = response.get_statusCode();
alert("Sorry, the request failed with status code " + statusCode);
}
或者,使用Fiddler并查看响应。确保状态码,内容类型和内容完全符合预期。
1.我不明白为什么OnFailure是一个函数调用,而不是一个函数名称......我认为它应该是OnFailure =“handleError”? 2. ajaxContent doesn似乎没有包含get_response()方法......它包含一个responseText,它是我的控制器方法返回的对象的字符串表示形式(我不能解引用),它还包含失败,完成,完成,成功和错误,所有这些都是返回对象本身的方法... 我正在使用来自Microsoft CDN的jquery.unobtrusive-ajax.min.js库的最新版本,因此可能是什么问题? – ekkis 2011-05-06 07:10:28
我的坏,我复制/粘贴。修正它 - 应该是一个函数名(我相信)。用Fiddler检查内容/内容类型/状态代码以确保它看起来都是相似的克拉。 – 2011-05-06 12:12:49