2014-04-08 34 views
0

我有以下代码通过.ajax call. When .ajax executes it redirects to an错误处理程序获取一些数据。如何获得ajax调用中的错误描述

$(document).ready(function(){ 
    $('#ctl00_ContentMain_ddlRegions').change(function(){ 
     region = $(this).val(); 
     alert(region);    
    });   
     $('input[type="text"]').autocomplete({ 
      source: function(request, response) 
      { 
      $.ajax({ 
       url: "EmailActivation/EmailActivation.asmx/GetIsoFromRegion", 
       data: "{ 'region': '" + region + "'}", 
       dataType: "json", 
       type: "POST", 
       contentType: "application/json; charset=utf-8", 
       success: function(data){ 
        alert("success"); 
       }, 
       error: function(response){ 
        alert("error: fails"); 
       }, 
       failure: function(response){ 
        alert("failure: fails"); 
       }      
      }); 
      }, 
      select: function(e,i){ 
      $("#<%=hfIso.ClientID %>").val("retrieved"); 
      }, 
      minLength: 4 
     }); 
}); 

我怎样才能找出我得到的错误,所以我可以修复发生的任何事情?

谢谢

+0

你已经在参数:error:function(response)
响应是错误对象,你可以玩它.. – Sekai

回答

0

这是无效的json。作为一个经验法则,从来没有通过级联构建JSON字符串,请使用一个库,而不是:

var data = { "region" : region }; 
var json = JSON.stringify(data); 

至于你如何能找到的错误,你可以通过看你的网络标签开始。我认为这是来自服务器的500错误,可以通过日志或调试找到。

+0

另外,在jQuery AJAX调用中,data属性可以只是一个对象:'data:data'。不需要串联。 – jwatts1980

+0

通过:$(document).ajaxError(function(e,xhr,opt){ alert(xhr.status +“”+ xhr.statusText); });'Get url incorrect –

0

我发现了错误:我添加以下代码:

$(document).ajaxError(function(e, xhr, opt){ 
     alert(xhr.status + " " + xhr.statusText); 
    }); 

感谢您输入家伙。