我有一个 ajax 表单,我在其中定义了一些ajaxOptions
变量并将其传递给Ajax.BeginForm
:
var ajaxOptions = new AjaxOptions
{
HttpMethod = "POST",
LoadingElementId = "loading",
OnBegin = "Base.loadingButton('#RegisterSubmit');",
OnSuccess = "Register.onSuccess",
OnFailure = "Base.onError"
};
所有 JavaScript 函数都定义在一个特殊的命名空间中,例如Base
, Register
,... 。
现在,当表单提交并在服务器中出现错误代码:“0”和类型:“Sql”并使用 elmah 记录,状态代码:“HTTP/1.1 302 Found”从服务器返回。
问题 1:
OnSuccess
即使在这种情况下,函数总是触发,状态 302 返回(但 OnSuccess 只有在状态码为 200 时才必须触发!!!),为什么?
问题2:
有时OnSuccess
即使状态码是200,函数也不会触发!!!,为什么?