Vairāk

CartoDB JSONP atzvanīšana bukletu meklēšanas spraudnī


ilgu laiku lasītājs, pirmo reizi jautājumu uzdotājs utt.

Tāpēc es cenšos ieviest meklēšanas funkciju lietotnē, kuru veidoju, izmantojot datus no kartodb brošūrā un šo brošūru meklēšanas spraudni: http://labs.easyblog.it/maps/leaflet-search/

Kā mazliet fona, man ir labi izveidota standarta meklēšana (zvanot savam geojsonam, izmantojot spraudni brošūra-ajax), taču problēma ir tā, ka tajā ir tikai viens lauks, un man tas ir nepieciešams, lai meklēšanā izietu vairākus laukus. Es zinu, ka to ir iespējams izdarīt, un es domāju, ka esmu atradis metodi, kā to izdarīt, bet kaut kas notiek nepareizi, un es nezinu, kāpēc.

Šis piemērs: http://labs.easyblog.it/maps/leaflet-search/examples/jsonp-filtered.html izmanto jsonp zvanu no mapquest, pēc tam sadala laukus (nejautājiet man, cik tas ir noderīgi, bet tas ir tikai piemērs), tāpēc esmu diezgan pārliecināts, ka viss, kas tam nepieciešams, ir saīsināt laukus "key" varā, lai tie meklētu kā vienu. kods no zemāk redzamā piemēra

var jsonpurl = 'http://open.mapquestapi.com/nominatim/v1/search.php?q={s}'+' & format = json & osm_type = N & limit = 100 & addressdetails = 0 ', jsonpName =' json_callback '; // trešās puses jsonp pakalpojuma funkcijas filtrsJSONCall (rawjson) {// atzvanīšana, kas pārveido lauku nosaukumu var json = {}, key, loc, disp = []; par (var i in rawjson) {disp = rawjson [i] .display_name.split (','); atslēga = disp [0] + ',' + disp [1]; loc = L.latLng (rawjson [i] .lat, rawjson [i] .lon); json [atslēga] = loc; // atslēga, vērtības formāts} return json; } var searchOpts = {url: jsonpurl, jsonpParam: jsonpName, filterJSON: filterJSONCall, animateLocation: false, markerLocation: true, zoom: 10, minLength: 2, autoType: false); map.addControl (jauna L.Control.Search (searchOpts));

Savā projektā savienojums darbojas labi, bet es visu mūžu nevaru iegūt datus filtrā. Mans kods ir identisks, izņemot jsonp URL un atzvanīšanu

var jsonpurl = 'http://stratiform.cartodb.com/api/v2/sql/?q=SELECT%20name,%20ST_AsGeoJSON%28the_geom%29%20FROM%20schools_points%20WHERE%20name%20ILIKE%20%27%25clunes% 25% 27 & format = json ', jsonpName =' atzvanīšana ';

Esmu mēģinājis iestatīt URL & & callback = neatkarīgi, mēģināju izmantot funkciju ST_AsGeoJSON sql, un man gandrīz nav ideju!

Vai ir problēma ar izmantoto cartodb jsonp URL? Vai tas citādi rīkojas ar atzvanīšanu vai kaut ko citu? Vai man tas ir jāpārveido, lai kaut kā atbilstu šai funkcijai? Vai tā ir krustojuma izcelsme ?? Es domāju, ka es jautāju, kāpēc mapquest jsonp un cartodb jsonp saites attiecīgi darbojas un nedarbojas?

Man ir problēmas risinājumi šai problēmai, taču acīmredzami vienkārši ir tīrāk iestatīt šo saturu pašā lietotnē. Vai kāds var palīdzēt?


pievienojot "atzvanīšanu", vajadzētu darboties, es to pārbaudīju, izmantojot šo kodu: