0

Пробовал какое-то время и не может найти ответ на этот вопрос. Typeahead работает с локальными данными, но не с удаленными данными. Хотя я вижу запрос в консоли, но он не возвращает никаких данных в typeahead.Удаленные данные Typeahead не отображаются в текстовом поле, но работают локальные данные

В консоли, как я печатаю я получаю:

XHR finished loading: GET "http://mypath/msqCity.php?City=ne" 
XHR finished loading: GET "http://mypath/msqCity.php?City=new" 

И так как я печатаю. Но ничего в поле типа.

У меня есть страница PHP с запросом на нее. Страница запроса работает нормально и возвращает данные. Я заметил, что ключевое значение массива показывает двойные кавычки, а не одиночные.

Я использую json_encode о результатах и ​​выводит

[{"City":"New York","StateProvince":"NY","Country":"US"}, 
{"City":"Newton","StateProvince":"MA","Country":"US"}, 
{"City":"New Orleans","StateProvince":"LA","Country":"US"}...] 

Я попытался остановить двойные кавычки и получить:

[{City:"New York",StateProvince:"NY",Country:"US"}, 
{City:"Newton",StateProvince:"MA",Country:"US"}, 
{City:"New Orleans",StateProvince:"LA",Country:"US"}...] 

Ни один из них работают удаленно.

Если я поместил данные в local на typeahead и вставлял несколько записей, он работает.

<body> 
    <div id="remote"> 
     <input class="typeahead" type="text" placeholder="Enter City"> 
    </div> 
    <script type="text/javascript"> 

     var cities = new Bloodhound({ 
      datumTokenizer: Bloodhound.tokenizers.obj.whitespace('City'), 
      queryTokenizer: Bloodhound.tokenizers.whitespace, 
      /* local: [{ 
          City: 'Hartford', 
          StateProvince: 'CT', 
          Country : 'US' 
         }, 
         { 
          City: 'Trumbull', 
          StateProvince: 'CT', 
          Country: 'US' 
         }, 
         { 
          City: 'New York', 
          StateProvince: 'NY', 
          Country: 'US' 
         }, 
         { 
          City: 'New Britain', 
          StateProvince: 'CT', 
          Country: 'US' 
         } 
        ]}); */ 
     prefetch: 'ScriptLibrary/msqCity.php', 
     remote: { 
      url: 'ScriptLibrary/msqCity.php?City=%QUERY', 
      wildcard: '%QUERY' 
      } 
     }); 

     $('#remote .typeahead').typeahead(null, { 
      name: 'City', 
      display: 'City', 
      source: cities 
     }); 
    </script> 
</body> 

Любое направление будет оценено.

ответ

0

Проблема была в запросе на php-странице с html. Я удалил весь html и просто оставил запрос, и теперь все в порядке.