2013-05-21 61 views
0

我正在創建一個搜索欄,查詢Facebook的結果。當我輸入一個單詞搜索並單擊搜索時,我會得到結果,但是發佈「狀態」的任何人......我會得到很多未定義的字段。所以它說「'用戶'共享一個狀態」,在它下面的照片部分說未定義,並且沒有實際狀態。它是空白的。我怎樣才能解決這個問題?Graph API返回所有狀態結果爲未定義

其他都很好....「'用戶共享照片」顯示他們共享的照片。還有一個說明......有時候。共享鏈接也起作用。

我也希望能夠在搜索欄中鍵入多個單詞,並且能夠再次搜索。截至目前,您必須刷新頁面才能重新搜索。

我已經檢查了答案的其他主題,但主題不是我如何進行搜索。我還沒有找到答案。希望有人能幫助!謝謝....這是我的搜索欄所在頁面的鏈接。我也會包含我的代碼。 http://ericnaff.com/html5/p3/另外 - 我怎樣才能做到這一點,「輸入/回車」也開始搜索?

代碼 -

功能searchFB(userSearchparameter){

$.getJSON('https://graph.facebook.com/search?q=' + userSearchparameter + '&callback=?', function(fbResults){ 
    $.each(fbResults.data, function() { 
     // Data Templating 
     $('<article class="fbResults"></article>').append ( 

      '<section class="resultsSource"><h6 class="shareHeader">' + 
      '<img class="fromUser" src="https://graph.facebook.com/' + this.from.id + '/picture" height="50" width="50" alt="' + this.from.name + '">' + 
      '<a href="http://www.facebook.com/' + this.from.id + '" class="fromName">' + this.from.name +'</a> shared a <a class="typeLink" href="' + this.link + '">' + this. 
      type + '</a> </h6>' + 
      '<time class="createdTime" datetime="' + this.created_time + '">' + fuzzyFacebookTime(this.created_time.replace(/-/g,'/')) + ' &middot;</time>' + 
      '<img class="typeLinkIcon" src="' + this.icon + '" alt="icon"></section>' + 
      '<section class="resultsDescription"><h6><a class="shareLink" href="' + this.link + '">' + 
      '<img class="sharePicture" src="' + this.picture + '" height="90" width="90" alt="' + this.name +'">' + 
      '<span class="shareName">' + this.name + '</span>' + 
      '<span class="shareCaption">' + this.caption + '</span>' + 
      '<span class="shareDescription">' + this.description + '</span>' + 
      '</a></h6></section>' + 
      '<iframe class="linkShare" src="http://facebook.com/plugins/like.php?href=' + this.link + '"></iframe>' 
     ).appendTo('body'); 

     $('.fbResults section.resultsDescription span:contains(undefined)').remove(); 
    }) 



}) 
} 
$("button.startSearch").click(function() { 
    var searchThis = $('.searchQuery').val(); 
    searchFB(searchThis); 
}); 
+0

Facebook的文檔很糟糕。我已經經歷了一百萬次。這幾乎就像寫文檔的人一樣,不知道他們在寫什麼。 –

+0

謝謝!我會嘗試的! –

+0

對於「共享狀態」的帖子,我仍然遇到問題。 –

回答

1

所以我想通了,所有的不確定結果的解決方案。這裏是我的代碼 -

$('.fbResults').find('img[src="undefined"]').remove(); 

我還使用了ENTER/RETURN啓動與.keypress功能搜索的照顧,像所謂

$("input.searchQuery").keypress(function(event) { 
$('.fbResults').remove(); 
if (event.which == 13) {      //enter 
event.preventDefault(); 

該代碼同時刷新結果。

感謝您收到的任何幫助。

相關問題