我正在使用$.post()Ajax调用servlet,然后使用生成的HTML片段替换div用户当前页面中的元素.但是,如果会话超时,服务器会发送重定向指令以将用户发送到登录页面.在这种情况下,jQuery正在用div登录页面的内容替换元素,迫使用户的目光确实见证了罕见的场景.
如何使用jQuery 1.2.6从Ajax调用管理重定向指令?
有没有什么方法可以在我的jQuery AJAX错误消息中显示自定义异常消息作为警报?
例如,如果我想通过Struts by 在服务器端抛出异常throw new ApplicationException("User name already exists");,我想在jQuery AJAX错误消息中捕获此消息('用户名已存在').
jQuery("#save").click(function () {
if (jQuery('#form').jVal()) {
jQuery.ajax({
type: "POST",
url: "saveuser.do",
dataType: "html",
data: "userId=" + encodeURIComponent(trim(document.forms[0].userId.value)),
success: function (response) {
jQuery("#usergrid").trigger("reloadGrid");
clear();
alert("Details saved successfully!!!");
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
}
});
Run Code Online (Sandbox Code Playgroud)
在第二个警报,我警告抛出的错误,我得到undefined,状态代码是500.
我不确定我哪里出错了.我该怎么做才能解决这个问题?
我期待开始做我的JavaScript多一点错误的证明,而且我发现很多文档的使用try,catch,finally,和throw,但我不是专家在何时何地抛出错误找一吨的建议.
我也完全是因为听过有很多章节的书籍或对错误处理的深入解释而玩游戏.雄辩的JavaScript触及了这个问题,但对这个问题并没有很强的规定性或固执己见.
感谢您提出的任何建议!