2017-01-13 62 views
0

數據我有一個代碼,請求REST Web服務:如何從Ajax響應

<script> 
    var respone=''; 
    $('.inn').on('change',function(){ 
     $.ajax({ 
      type: "post", 
      dataType: "jsonp", 
      url:url, 
      success: function(data){ 
       var json=JSON.parse(data); 
       respone=data; 
       console.log(respone); 
      }, 
      error:function(e) 
      { 
       console.log(e); 
      } 

     }); 
     alert(respone); 
     console.log(respone) 

    }) 
</script> 

REST Web服務工作正常,返回JSON數據。 Ajax也返回一些數據,但不在控制檯中。是否有可能獲得ajax響應並在控制檯中預覽它?

+0

是吧'jsonp'或'JSON'? –

+1

對於jsonp你需要回調 – guradio

+0

請在'var json = JSON.parse(data);'in'success'回調之前放置'console.log(data)',並在這裏發佈結果。 – 31piy

回答

0

檢查以下行:

的數據類型(默認:智能猜測(XML,JSON,腳本或HTML)) 類型:String 的類型,你從服務器期待回數據。如果沒有指定,jQuery將嘗試根據響應的MIME類型推斷它(XML MIME類型將生成XML,在1.4中JSON將生成一個JavaScript對象,在1.4腳本中將執行該腳本,而其他任何東西都將作爲字符串返回)。可用類型(以及作爲成功回調的第一個參數傳遞的結果)爲:

「xml」:返回可以通過jQuery處理的XML文檔。

「html」:將HTML作爲純文本格式返回;包含的腳本標記在插入到DOM中時被評估。

「script」:將響應評估爲JavaScript並將其作爲純文本返回。除非緩存選項設置爲true,否則通過將追蹤字符串參數_ = [TIMESTAMP]附加到URL來禁用緩存。注意:這會將POST轉換爲遠程域請求的GET。

「json」:將響應評估爲JSON並返回一個JavaScript對象。除非請求在其請求選項中包含jsonp:false,否則跨域「json」請求將轉換爲「jsonp」。 JSON數據嚴格分析;任何格式不正確的JSON都會被拒絕並引發解析錯誤。從jQuery 1.9開始,一個空的響應也被拒絕;服務器應該返回null或{}的響應。 (有關正確的JSON格式的更多信息,請參閱json.org。)

「jsonp」:使用JSONP加載JSON塊。添加額外的「?callback =?」到您的URL的末尾來指定回調。除非緩存選項設置爲true,否則通過向URL追加查詢字符串參數「_ = [TIMESTAMP]」來禁用緩存。

「text」:純文本字符串。

Complete Reference

你可以安慰你一樣的反應:

success: function(data){ 
    console.log(data); 
}