2015-11-30 3 views
0

im, используя jquery ui, чтобы создать автоматическое полное поле ввода. Блок ввода работает хорошо, когда у меня было только одно свойство (uk postcode), но я хотел добавить другое ассоциативное значение для моего свойства почтового индекса (города), и идея заключалась в том, что кто-то напечатал номер почтового индекса, он появляется в списке имени города, который указывает, но код jquery не работает сейчас.Авто Полное json ассоциативное свойство

Json Выход:

{"AB10":"Aberdeen ","AB11":"Aberdeen ","AB12":"Aberdeen "} 

PHP:

$sql = "SELECT * FROM uk_postcodes"; 
    $result = mysqli_query($connection, $sql) or die("Error " . mysqli_error($connection)); 

    $dname_list = array(); 
    while($row = mysqli_fetch_array($result)) 
    { 
     $dname_list[$row['postcode']] = $row['town']; 
    } 
    echo json_encode($dname_list); 

HTML:

<input type="text" name="Location" id="uk_postcode" placeholder="town or postcode" value=""/> 

Jquery:

$(function() { 
      var uktowns = <?php include('autocomplete.php'); ?>; 
      $("#uk_postcode").autocomplete({ 
       source: uktowns, 
       autoFocus:true 
      }); 
     }); 
+0

Я принимаю это автозаполнение 'source:' поддерживает json? – VIDesignz

ответ

0

UPDATE

Основе документы, данные должны быть отформатированы как массив объектов, а не только простой объект

http://api.jqueryui.com/autocomplete/#option-source

[ { label: "Choice1", value: "value1" }, { label: "Choice2", value: "value2" } ] 

оригинальный ответ

Я бы постарался добавить это в ваш php-скрипт ...

header('Content-Type: application/json'); 

Прямо перед ....

echo json_encode($dname_list); 

Таким образом, когда вы включаете файл, это, безусловно, JSON.

+0

благодарит за замечание, но все равно не отвечает на мой вопрос :) –

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