2013-07-24 26 views
0

我正在使用spring-mvc和jquery ajax。我的阿賈克斯函數是對於大型響應的jQuery ajax錯誤

jQuery("#UserSearch").click(function() { 
       jQuery("body").addClass("loading"); 
       var formValues = jQuery('#user-search').find(':input[value][value!=""]').serialize(); 
       jQuery.ajax({ 
        type: "GET", 
        url: "/SampleWebSErvice/sample/user-byName", 
        data: formValues, 
        dataType: 'json', 
        timeout: 600000, 
        success: function (data) { 
         jQuery('#json').val(JSON.stringify(data)).trigger('change'); 
         jQuery('body').removeClass("loading"); 
        }, 
        error: function (e) { 
         alert('Error while request..' + e); 
         jQuery('body').removeClass("loading"); 
        } 
       }); 
      }); 

我的問題是我從我的服務器返回json字符串。當響應很大時,它進入錯誤函數 我通過螢火蟲檢查它返回正確的響應。還有一點是 如果響應內容較少意味着它沒有問題。當它超過只有它有問題。 在螢火響應標籤它說,在新窗口中打開查看響應時響應更

我沒有任何服務器端的問題,因爲正確的JSON是在 我只有具有大了服務器控制檯和瀏覽器控制檯打印數據問題。

+0

什麼是錯誤消息 –

+0

它去了誤差函數的錯誤而request.Object對象狀態文本:「parsererror」當我調試我得到 – jackyesind

+0

嘗試錯誤處理程序作爲錯誤:函數(jqXHR,textStatus,errorThrown){alert('Error status:'+ textStatus); alert('Error message:'+ errorThrown); jQuery('body')。removeClass(「loading」); } –

回答

0

從服務器返回的json格式出現問題。我想通了,通過使用下面的誤差函數

jQuery("#UserSearch").click(function() { 
       jQuery("body").addClass("loading"); 
       var formValues = jQuery('#user-search').find(':input[value][value!=""]').serialize(); 
       jQuery.ajax({ 
        type: "GET", 
        url: "/SampleWebSErvice/sample/user-byName", 
        data: formValues, 
        dataType: 'json', 
        timeout: 600000, 
        success: function (data) { 
         jQuery('#json').val(JSON.stringify(data)).trigger('change'); 
         jQuery('body').removeClass("loading"); 
        }, 
        error: function (jqXHR, textStatus, errorThrown) { 
       alert('Error status: ' + textStatus); 
       alert('Error message: ' + errorThrown); 
       jQuery('body').removeClass("loading"); 
      } 
       }); 
      });