2012-03-21 4 views
0

Im получает имена альбомов из facebook и записывает их на странице с помощью приведенного ниже кода. Проблема заключается в том, что она включает в себя также неопределенные, поэтому она записывает две «Wall Photos», поэтому как я могу помешать ей выписывать неопределенные?неопределенные данные ответа от facebook api?

FB.api('/xxxxxxxxxxxxxxx/albums', function(response) { 

    if (response && response.data && response.data.length){ 
    var ul = document.getElementById('fb-albumslist'); 
    for (var i=0, l=response.data.length; i<l; i++) { 
    if (response.data !== "undefined"){  
     var 
     album = response.data[i], 
     li = document.createElement('li'), 
     a = document.createElement('a'); 
     a.innerHTML = album.name; 
     a.href = album.link; 
     li.appendChild(a); 
     ul.appendChild(li); 
    } 
    } 
    } 
    }); 

А на странице она выписывая:

Wall Photos 
Wall Photos (this is undefined) 
Cover Photos 
Profile Picture 

Im пытается с "{но я не уверен, как это сделать "(не определено, если response.data ==!")" ? Любой вход оценили, спасибо!

ответ

1

кажется, что Facebook создает другой фотообоев альбом с этими свойствами:

{ 
    "id": "YYYY", 
    "from": { 
    "name": "AAAA", 
    "id": "XXX" 
    }, 
    "name": "Wall Photos", 
    "privacy": "custom", 
    "type": "friends_walls", 
    "created_time": "2011-02-02T08:54:20+0000", 
    "updated_time": "2011-02-02T08:54:20+0000", 
    "can_upload": false 
}, 

Я не уверен, что цель этого альбома, но самое лучшее, что нужно сделать, это проверить, если link поле существует в противном случае пропустить:

if(!album.link) continue; 
+0

Hi ifaour и спасибо, но я не могу заставить его работать, если я использую вам код, я получаю эту ошибку: TypeError: «неопределенные» не является объектом (оценка «album.link») и Im не знаете, что делать? Я положил его вместо «if (response.data! ==« undefined ») {« –

+0

просто положил его перед этой строкой: 'a.innerHTML = album.name;' – ifaour

+1

Большое спасибо ifaour, отлично работает! –

Смежные вопросы