Hirdetés
-
Mobilarena
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Teasüti
#3656
üzenetére
"És JSON formátumot is fel tudok dolgozni XML objektumként?"
Nem jó a kérdés, JSON-formátumot annak megfelelő formában is kell feldolgozni.
Kell hozzá általában egy JSON.parse() (+[link]), lásd alább.
Nagy előnye, hogy nagyon kényelmes is feldolgozni (ha a natív JSON-támogatás adott (ha nem, akkor külső könyvtár vagy más megoldás kell))."megzavart, hogy én itt XMLHttp-vel dolgozom"
Nem csodálom, de ne zavarjon meg.Az előzőek alapján írtam neked egy nagyon egyszerű példakódot, nyisd meg a böngésződ fejlesztőpanelét (F12-vel), kattints a Console fülre, majd egyszerűen másold be ezt a kódot, és nyomj egy Entert, hogy lásd, mit csinál:
// https://developer.mozilla.org/en-US/docs/AJAX/Getting_Started
var loc = "40.714224,-73.961452"; // csak példa
var httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function() {
if (httpRequest.readyState === 4) {
if (httpRequest.status === 200) {
var responseText = httpRequest.responseText;
var responseTextInJSON = window.JSON.parse(httpRequest.responseText);
if(responseTextInJSON.status === "OK"){
var results = responseTextInJSON.results;
for(var i = 0; i<results.length; i++) {
var addr = results[i].formatted_address;
console.log("formatted address: ", addr);
// további eredmények...
}
}
else {
// valami gáz van, kezeld le a hibát
}
} else {
// para van
alert('There was a problem with the request.');
}
}
};
var url = "https://maps.googleapis.com/maps/api/geocode/xml?latlng="+loc+"&sensor=true";
// inkább JSON-formátum
url = "https://maps.googleapis.com/maps/api/geocode/json?latlng="+loc+"&sensor=true";
var isAsynchronous = true; // változtasd meg, attól függően, hogy aszinkron kérést szeretnél, vagy sem
httpRequest.open("GET", url, isAsynchronous);
httpRequest.send();Így elég egyszerűen fel lehetett dolgozni az eredményeket, amiket JSON-formátumban kaptál.
-
fordfairlane
veterán
válasz
Teasüti
#3656
üzenetére
Ha megvan az eredmény JSON formátumban, egyszerűen belerakod egy változóba, majd a megfelelő propertyket lekérdezed.
var v = http.responseText;
for(i = 0; i < v.results.length;i ++) {
alert(v.results[i].formatted_address);
}alert helyett persze használj valami más debug kiíratást.
Új hozzászólás Aktív témák
- Samsung Galaxy S24 5G DS 8 + 128GB még gyári garanciával eladó!
- Ideapad Flex 5 16IAU7 2-in-1 16" FHD+ IPS érintő i5-1235U 8GB 256GB NVMe magyar vbill gar
- 5 db Panasonic FZ-X1- Barcode ütésálló tablet- vonalkód olvasós (Nagyobb tétel rendelhető)
- DDR1, DDR2, DDR3 RAM bazár, 512mb-1gb-2gb
- Samsung 990 EVO Plus 2TB - 5 év garancia
- GYÖNYÖRŰ iPhone 11 Pro 64GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3565
- Beszámítás! LG 32GQ850-B 32 240Hz IPS QHD 1ms monitor garanciával hibátlan működéssel
- Új akksi! AKCIÓ! Lenovo ThinkPad P15 Gen 2 Intel i7-11850H 32GB 1000GB Nvidia RTX A4000 1 év gar.
- Lenovo ThinkPad X1 Yoga G6 (6th Gen) - i7-1185G7, 32GB, 1TB SSD, 4K multitouch + TOLL (ELKELT)
- Új MSI Modern 15 FHD IPS Ryzen5 7530U 4.5Ghz 16GB 512GB SSD Radeon RX Vega7 Graphics Win11 Garancia
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest
Kell hozzá általában egy


