2015-05-17 6 views
0

У меня есть странная проблема:Jquery автозаполнения с данными JSon

Первый у меня есть этот код:

var countries = dajjson(); 

$('#usluga').autocomplete({ 
    lookup: countries, 
    onSelect: function (suggestion) { 
     alert('You selected: ' + suggestion.ID + ', ' + suggestion.naziv); 
    } 
}); 
}); 

function dajjson() { 
    $.ajax({ 
     url: "autoUsluge.php", 
     type: "POST", 
     async: true, 
     dataType: "html", 

     success: function(data) { 
      console.log(data); 
     }, 
     error: function (data) { 
      console.log(data); 
      console.log('GRESKA NEKA'); 
     } 
    }); 
}; 

Моя JSON является - функция DAJJSON() возвращение:

[{"ID":"4","naziv":"","opis":"Web dizajn","jmere":"komada","kol":"2","cena":"50","valuta":"Eur","popust":"5","porez":"20","user_id":"1"},{"ID":"5","naziv":"","opis":"Programiranje","jmere":"sati","kol":"5","cena":"10","valuta":"Eur","popust":"5","porez":"20","user_id":"1"},{"ID":"6","naziv":"","opis":"Popravka zadnjeg trapa na automobilu Audi","jmere":"komada","kol":"1","cena":"80","valuta":"Eur","popust":"5","porez":"20","user_id":"1"}] 

и где я проверьте код, который я только что получил:

Uncaught SyntaxError: Unexpected token <

+0

'POST' - это неправильное действие HTTP для отправки данных ... вы, вероятно, не захотите использовать' GET'. Это просто соответствует спецификации HTTP. – abc123

+0

@ abc123 Мне пришлось взаимодействовать с Oracle Application Express в предыдущем задании, и единственными запросами, которые он разрешил, были 'POST'. Я согласен с вами - следуйте за спецификацией всякий раз, когда и где бы вы ни были, когда это невозможно, это может быть абсолютным кошмаром. –

ответ

2

Откройте инструменты разработчика в любом браузере, который вы используете (обычно F12 или Ctrl-Shift-I или в меню где-то). Перейдите на вкладку «Сеть» и запустите свой код.

Посмотрите на ответ на запрос AJAX. Это не будет то, что вы ожидаете :)

Свойство dataType, которое вы передаете AJAX, сообщает серверу, какие данные вы ожидаете. У вас он установлен как html, поэтому ваш ответ будет в HTML. По внешнему виду, вы действительно хотите json.

+0

Возможно, JSON - это проблема, потому что мне нужно в этом формате: var countries = [ {значение: «Андорра», данные: 'AD'}, // ... {значение: 'Зимбабве', данные: 'ZZ'} ]; –

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