相关疑难解决方法(0)

jQuery 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.

我不确定我哪里出错了.我该怎么做才能解决这个问题?

ajax jquery custom-exceptions

708
推荐指数
15
解决办法
140万
查看次数

jQuery:捕获ajax异常

许多失败的jQuery ajax请求正在以错误污染我的控制台.查看产生这些控制台错误的代码(jQuery 1.7.2,第8240行)

                // Do send the request
                // This may raise an exception which is actually
                // handled in jQuery.ajax (so no try/catch here)
                xhr.send( ( s.hasContent && s.data ) || null );
Run Code Online (Sandbox Code Playgroud)

我注意到这个评论解释了为什么没有try/ catch那里.但是,即使error我的jQuery.ajax请求中有一个显式的回调函数,我仍然没有处理这些错误jQuery.ajax.

如何以错误消息不出现在控制台中的方式处理jQuery ajax错误?

编辑:下面是我执行ajax请求的代码段,以及准确的错误消息(在Chrome中):

$.ajax({
    dataType: 'xml',
    url: "./python/perfdata.xml?sid=" + (new Date()),
    success: function (data) {
        var protocols = $("Protocols", data).children();

        parseData(protocols);
    },
    error: function (error) {
        setTimeout(getData, 200);
    }
}); …
Run Code Online (Sandbox Code Playgroud)

ajax jquery

17
推荐指数
2
解决办法
1万
查看次数

标签 统计

ajax ×2

jquery ×2

custom-exceptions ×1