2015-07-22 2 views
0

Мне нужна помощь в добавлении динамического списка ссылок с Delicious.com на мой сайт. Идея состоит в том, чтобы показать все новейшие ссылки с определенным тегом (в этом случае тег «flyfishing»).Delicious JSON List Issue

То, что я сделал до сих пор, я поставил ссылку в тег сценария в моем заголовке страницы, чтобы получить список JSON ссылок с согласующим тегом:

<script type="text/javascript" src="http://feeds.delicious.com/v2/json/tag/flyfishing?count=20?callback=getDelicious"> 

Функцией я написал называюсь getDelicious является функция обратного вызова. Вот эта функция:

function getDelicious(){ 

$(function() { 
     var _el = $("#dynaList"); 
     var out="<ul>"; 
     for (var y in Delicious.posts) { 
      out+="<li>" + Delicious.posts[y]+"</li>"; 
     } 

     out+="</ul>"; 
     return _el.html(out); 
    }); 

}  

Теперь это не работает. Кто-нибудь знает, что я делаю неправильно?

Является ли проблема в том, как я получаю данные JSON или что-то не так с кодом, который я написал? Я не уверен, правильно ли я получаю доступ к сайту Delicious. Является ли массив, который я пытаюсь проанализировать на самом деле, что возвращается ссылкой в ​​моем теге скрипта? Я не получаю никаких ошибок в консоли, поэтому я действительно не знаю, что случилось.

Любая помощь будет оценена, так как я довольно новичок в JQuery, и я только начал с Ajax и JSON.

+0

Вы звоните 'getDelicious()' где-нибудь? –

+0

'Теперь это, похоже, не работает.' каким образом он не работает? Существуют ли ошибки консоли? Сетевые ошибки? –

+0

В обратном вызове по ссылке: script type = "text/javascript" src = "http://feeds.delicious.com/v2/json/tag/flyfishing?count=20?callback=getDelicious" –

ответ

0

Ваш URL-адрес в вашем теге <script> указан неверно. Параметр callback должен иметь символ амперсанда (&) перед ним, а не знак вопроса.

http://feeds.delicious.com/v2/json/tag/flyfishing?count=20?callback=getDelicious 
                 ^
               Must be "&" not "?" 

Кроме того, с JSONP результат запроса приводится в качестве аргумента обратного вызова:

function getDelicious(data) { 
    // ... 
} 
+0

Так что это должна быть функция getDelicious (Delicious) {.... Знаете ли вы, что у меня есть правильное имя массива, данное Delicious? –

+0

Я думаю, что проблема должна быть в том, как я имею дело с массивом JSON, возвращаемым Delicious. У кого-нибудь есть больше опыта в анализе данных JSON, возвращаемых Delicious? –