2011-07-25 29 views
0

我期待通過JavaScript(jQuery),特別是非官方的Google Dictionary JSON(http://googlesystem.blogspot.com/2009/12/on-googles-unofficial-dictionary-api.html)創建JSON的HTML版本。如何解析帶尾隨文本和開始文本的JSON?

我面臨的問題是JSON不可讀,因爲它在它前面有這個「dict_api.callbacks.id100(」,並且由「,200,null)」落後。

我該如何刪除它,然後將其放入JSON對象中,以便將這些元素附加到HTML中。提前致謝。

+0

你從字符串中獲取值嗎?這兩個部分總是一樣還是一直改變? –

+1

根據鏈接的博客文章,該API不適用於一般消費,由於谷歌操作該數據集的許可證;該資源可能會消失。無論如何你確定要使用它嗎? – SingleNegationElimination

+0

我只是用它作爲學校的項目沒有更多 –

回答

0

這是一個JSONP響應。

它調用callback參數指定的函數來給出響應。
您應該創建一個全局函數來處理響應,並將其名稱作爲callback

的jQuery會爲你做到這一點:

你可以做
$.getJSON(
    "http://www.google.com/dictionary/json?q=test&sl=en&tl=en&restrict=pr%2Cde&client=te&callback=?", 
    function(response) { 
     alert(response); 
    } 
) 
+0

這個由於一些奇怪的原因,它給了一個空白的JSON。 –

0

一件事是寫一個正則表達式(或一對他們的)做這樣的事情:

與string.replace(/定期表達式匹配start /,「」) string.replace(/ Regulat表達式匹配完成/,「」)

小心不要使用貪婪的正則表達式,如果你走這條路線,我已經看到了娛樂 - 但用貪婪e不太有幫助的結果這種情況下的xressions。否則,我肯定會與SLak有關的使用JQuery的其他響應一樣,因爲它應該也會爲您提供額外的能力來處理數據,如果事後需要更改。