2012-10-10 111 views
0

我有這個基本上提出請求的一小段代碼,並在console.log(我省略了我的密鑰和sig)拋出結果。jQuery的Ajax請求 - 似乎沒有提出請求

問題是,它似乎從來沒有提出要求。

感謝您的幫助,我是一個新手,我還在學習。

//alert('you clicked on the discgolf button'); 
$('#zipsubmit').click(function(){ 
    dgZipSearch();  // call this function perform DGCR search and 
          populate the page with results 
}); 

function dgZipSearch(){ 

    alert('foo1'); 

    $.ajax({ 
     url:'http://www.dgcr-api.com/?key=xxxxx&mode=findzip&zip=' + $('#zipcode').val() + '&rad=10&sig=yyyyyyy', 
     dataType: 'jsonp', 
     success: function(zip_results){ 
      console.log(zip_results); 
     } 
    }); 
    alert('foo2'); 
}; 
+0

你確定這真的是JSONP嗎?你在控制檯中看到什麼? – SLaks

+1

你有沒有試過把'error'回調加入你的代碼?也許它會給你一些線索,爲什麼這不起作用。另外,如果您實際上遇到錯誤,請記住使用'statusCode'檢查http代碼。 – MilkyWayJoe

+0

你有沒有在頭腦中包含jquery? – doniyor

回答

0

你也可以通過刪除url中的「/」來嘗試。更改後的URL可能看起來如下

http://www.dgcr-api.com?key=xxxxx&mode=findzip&..... 

嘗試用上面的URL(觀察員「/」我以後www.dgcr-api.com刪除)

也一件事是,Ajax調用有限制如跨域調用。 所以請檢查下面的鏈接中的「crossDomain」屬性。

http://api.jquery.com/jQuery.ajax/

+0

呃......有時候我看不到這些小東西... /呃.. –

+0

@JoelJohnson接受了如果它對你有用的答案。 –

0

按照該document,該API簡單地與JSON格式的響應,除非你特別指定了out參數XML

因此,無需爲ajax請求指定dataType屬性,jQuery將通過響應MIME類型智能地猜測正確的數據類型。

更改像

$.ajax({ 
    url:'http://www.dgcr-api.com/?key=xxxxx&mode=findzip&zip=' + $('#zipcode').val() + '&rad=10&sig=yyyyyyy', 
    success: function(zip_results){ 
     console.log(zip_results); 
    } 
}); 

,並嘗試請求。

對於錯誤檢查,您需要實現錯誤回調函數。此外,該API還提供了具體的response codes以便於錯誤處理。