JavaScript-Code Ich beginne mit:
function doSomething(url) {
$.ajax({
type: "GET",
url: url,
dataType: "xml",
success: rssToTarget
});
}
Muster Ich mag würde verwenden:
//where elem is the target that should receive new items via DOM (appendChild)
function doSomething(url, elem) {
$.ajax({
type: "GET",
url: url,
dataType: "xml",
success: rssToTarget(elem)
});
}
Ich glaube nicht, dass ich den Rückruf bekommen kann auf diese Weise zu arbeiten, nicht wahr? Was ist das richtige Muster? Ich möchte nicht unbedingt globale Variablen verwenden, um vorübergehend den elem
oder elem Namen zu halten.
http://stackoverflow.com/questions/2602981/jquery-how-to-pass-additional-parameters-to-success-callback-for-ajax-call Verwendung aufgerufenen Daten –
Für zukünftige Referenz: Sie müssen die speichern Callback-Funktion ('rssToTarget') innerhalb der' success' -Eigenschaft des Objektliterals, die Sie an '$ .ajax()' übergeben, so dass jQuery diese Funktion aufrufen kann, sobald die AJAX-Anfrage abgeschlossen ist. Durch Hinzufügen von '(elem)' am Ende des Funktionsnamens rufen Sie irrtümlicherweise 'rssToTarget' auf und speichern ihren Rückgabewert in' success'. In JS wird das Hinzufügen von Klammern am Ende eines Funktionsnamens dazu führen. – BrunoFacca