Combobox + nominatim поисковая строка
Здравствуйте! я начинающий программист, мне необходимо сделать поиск адресов используюя сервер nominatim. Я хочу чтобы после нажатия на кнопку поиска формировался запрос и результат выводился в виде combobox. Вот мой код:
function Test() { var userstore; var searchbutton = Ext.create('Ext.Button', { text: 'Поиск', renderTo: Ext.getBody(), handler: function() { var me = this; var find = this.findParentByType("window"); var combo = find.getComponent("ComboBox"); me["adress"] = combo.getValue(); Ext.Ajax.request({ url: 'http://nominatim.t48.ru/nominatim/search.php?q='+me.adress+'&format=json', method: 'GET', scope: this, success: function (response) { var jsonResp = Ext.JSON.decode(response.responseText); var convertData = []; for (var i = 0; i < jsonResp.length; i++) { convertData.push( {'display_name':jsonResp[i].display_name ,'lat':jsonResp[i].lat, 'lon':jsonResp[i].lon}); } userstore = new Ext.create('Ext.data.Store', { fields: [ "place_id" , "display_name" , "lat" , "lon" ], data: convertData}) } }); } }); var usersCombobox = Ext.create('Ext.form.ComboBox', { itemId: "ComboBox", width: 400, listWidth: 400, store: userstore, fieldLabel: 'Адреса', displayField: 'display_name', valueField: 'lon', queryMode: 'remote', listConfig: { getInnerTpl: function(){ return '<h>{display_name}</h>' + '<div class="rate">Координаты: [{lat}] : [{lon}]</div>'; } }}); console.log("store",userstore); usersCombobox.bindStore(userstore); var win = Ext.create("Ext.window.Window", { width: 500, height: 500, maximizable: true, layout: "hbox", items: [usersCombobox,searchbutton], }); win.show(); } Но так как при создании combobox хранилеще загружается ввиде переменной и динамически не изменяется, как сделать так, чтобы содержимое combobox изменялось каждый раз когда я ищу новый адресс? |
Часовой пояс GMT +3, время: 13:35. |