Bobby: Kein Zugriff auf Objekt

Beitrag lesen

Moin

Was ist »this« hier? Ich nehme an, $() ist jQuery und du wrappst ein Element damit. Dann wäre url eine Elementeigenschaft. Dann könntest du auch gleich »this.url« schreiben.

$(this) bezieht sich auf das getJSON Objekt. Dies hat sehr wohl eine Eigenschaft URL.
getJSON ist eine Funktion, gut auch das ist ein Objekt, aber die hat vermutlich keine Eigenschaft url. Auch ist das egal, es zählt allein, an welchem Objekt das Callback gespeichert bzw. gerufen wird.
Ich würde vermuten, das Callback wird mit den restlichen Optionen in einem Objekt gespeichert und dann wird an diesem das Callback gerufen. Das würde die Eigenschaft url erklären.
Das wäre dann aber nicht dokumentiert und du kannst dich nicht darauf verlassen, daß das so bleibt.

Ergebnis der Ausgabe: $(this)

accepts
Object { *="*/*", text="text/plain", html="text/html", mehr...}

async
true

contentType
"application/x-www-form-urlencoded; charset=UTF-8"

contents
Object { xml=RegExp, html=RegExp, json=RegExp, mehr...}

converters
Object { text html=true, * text=String(), text json=function(), mehr...}

crossDomain
true

dataType
"json"

dataTypes
["text", "json"]

flatOptions
Object { url=true, context=true}

global
true

hasContent
false

isLocal
false

jsonp
"callback"

processData
true

responseFields
Object { xml="responseXML", text="responseText", json="responseJSON"}

type
"GET"

url
"http://maps.googleapis....n&sensor=false"

jsonpCallback
function()

xhr
$c()

das ist das normale XMLHTTPRequest-Objekt (bzw. jqXHR-Objekt) über das das Ajax abläuft. Sollte also funktionieren.

Gruß Bobby

--
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
### Henry L. Mencken ###
-> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
## Viktor Frankl ###
ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)