Использование плагина jQuery с автозаполнением в Geonames - PullRequest
0 голосов
/ 15 марта 2012

Я относительно новичок в jquery и пытаюсь выяснить, как заставить этот автозапрашивающий плагин работать с геонами (возвращает информацию о местоположении). Вот аналогичный пример того, как он работает с автозаполнением jquery http://jqueryui.com/demos/autocomplete/#remote-jsonp, но я не могу заставить его работать с автозаполнением. Вот что я пытаюсь сделать, но я ничего не получаю за результаты и эту ошибку консоли браузера: Uncaught TypeError: Невозможно прочитать свойство 'geonames.adminName1' из неопределенного.

$("#location2").autoSuggest("http://ws.geonames.org/searchJSON", {selectedItemProp: "geonames.adminName1", searchObjProps: "geonames.adminName1", selectedValuesProp : "geonames.name"});

JSON, возвращенный из geonames, выглядит следующим образом:

{"totalResultsCount":29,"geonames":[{"countryName":"United States","adminCode1":"UT","fclName":"city, village,...","countryCode":"US","lng":-111.6946475,"fcodeName":"populated place","toponymName":"Orem","fcl":"P","name":"Orem","fcode":"PPL","geonameId":5779334,"lat":40.2968979,"adminName1":"Utah","population":88328},{"countryName":"United States","adminCode1":"UT","fclName":"country, state, region,...","countryCode":"US","lng":-111.69912,"fcodeName":"administrative division","toponymName":"City of Orem","fcl":"A","name":"City of Orem","fcode":"ADMD","geonameId":7174024,"lat":40.2987069,"adminName1":"Utah","population":88328}]}

Если я вручную скопирую JSON в переменную с именем data, а затем использую его для источника, вот так:

$("#location2").autoSuggest("data.geonames", {selectedItemProp: "adminName1", searchObjProps: "adminName1", selectedValuesProp : "name"});

Я также хотел бы знать, возможно ли объединить более 1 значения при выборе результата, например, adminName1 + name?

Пожалуйста и спасибо!

1 Ответ

0 голосов
/ 05 июля 2012

удаленный ответ jsonp на автозаполнение работает с методом $ .ajax ().Просмотрите документацию по $ .ajax ().

В случае успеха метод ajax может передать данные в $ .map (), а затем вы можете делать с данными все, что захотите (распечатать или выложить их).на DOM)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...