2017-10-08 88 views
0

我使用document.write()爲json。在ajax之外工作document.write(JSON.stringify({name:'jason',surname:'etc'}));,但在.done()之外工作。我試過刪除dataType:'json'但不工作。json.stringify在jquery ajax

$.ajax({ 
    url: "http://api.wunderground.com/api/24b969202160514e/geolookup/conditions/q/Turkey/zmw:00000.58.17352.json", 
    dataType:'json' 
}) 
.done(function(data) { 
    console.log("success",data); 
    document.write(JSON.stringify(data)); 
    //document.write(data); 
}) 
.fail(function(data) { 
    console.log("error",data); 
}) 
.always(function() { 
    console.log("complete"); 
}); 
+0

嘗試'success',而不是'done' – prasanth

+0

https://www.w3schools.com/jsref/met_doc_write.asp我想可能你不能使用文件撰寫文檔後準備。您可以使用jQuery來修改或追加內容到頁面中的某個元素。 – Surely

+0

@prasanth我嘗試但不工作。實際上代碼是工作,但我想在頁面上寫入原始的JSON。它在html> body中寫入。但它在成功或完成功能之外寫入原始json。如何在頁面上編寫原始json。沒有HTML>正文。 – bukalemun

回答

0

如果您檢查您的瀏覽器控制檯,您應該看到下面的錯誤...

jquery-git.js:9648 Mixed Content: The page at 'https://jsfiddle.net/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://api.wunderground.com/api/24b969202160514e/geolookup/conditions/q/Turkey/zmw:00000.58.17352.json'. This request has been blocked; the content must be served over HTTPS.

您的網址更改爲從協議到httphttps

https://api.wunderground.com/api/24b969202160514e/geolookup/conditions/q/Turkey/zmw:00000.58.17352.json

這應該工作。

Working Demo

+0

我無法在控制檯中得到任何錯誤。我將http更改爲https,但無法正常工作。 – bukalemun

+0

@bukalemun,檢查鏈接 – dcodesmith

0

你爲什麼不使用jQuery的getJSON

$.getJSON('https://api.wunderground.com/api/24b969202160514e/geolookup/conditions/q/Turkey/zmw:00000.58.17352.json') 
.done(function(data) { 
    console.log("success",data); 
    document.write(JSON.stringify(data)); 
    //document.write(data); 
}) 
+0

實際上代碼工作,但我想在頁面上寫入原始json。它在html> body中寫入。但它在成功或完成功能之外寫入原始json。 – bukalemun