2016-05-26 31 views
0

如果我使用(靜像)與Twitter事先鍵入的內容

var users_bloodhound = new Bloodhound({ 
    datumTokenizer: function (datum) { 
     return Bloodhound.tokenizers.whitespace(datum.value); 
    }, 
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    remote: {url:'https://cdn.rawgit.com/twitter/typeahead.js/gh-pages/data/countries.json', 
    filter: function (result) { 
     return $.map(result, function (username) { 
      return { 
       name: username 
      }; 
     }); 
    } 
     } 
}); 

與格式化爲JSON的滯留[ 「安道爾」, 「阿拉伯聯合酋長國」, 「阿富汗」,...]它按預期工作,但我不能管理與

var users_bloodhound = new Bloodhound({ 
    datumTokenizer: function (datum) { 
     return Bloodhound.tokenizers.whitespace(datum.value); 
    }, 
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    remote: {url:'./search.php?query=%QUERY', 
    wildcard: '%QUERY', 
    filter: function (result) { 
     return $.map(result, function (username) { 
      return { 
       name: username 
      }; 
     }); 
    } 
     } 
}); 

接收我的PHP文件返回的數據(我只後,遠程改變的部分...)的PHP文件接收輸入和記錄例如[ 「test01」,「test02」]作爲輸入't'的答案。我的PHP文件的最後兩行分別是:

error_log(json_encode($results)); 
return json_encode($results); 

那麼,如何讓我的JS函數收到我的PHP文件的返回值?

回答

0

而不是returningjson_encode你試過echoing吧,並且註釋掉錯誤日誌來看看會發生什麼?

//error_log(json_encode($results)); 
echo json_encode($results); 
+0

工程!謝謝! – user3254780

+0

沒問題。儘管可以創建更深入的答案,爲了將來的參考,'php'不會'返回'任何東西到客戶端('ajax')。 Ajax只是拉回在'php'頁面顯示的內容,所以如果沒有顯示任何內容(即'echo'ed),'ajax'也不會看到它。 – imvain2

相關問題