2010-12-09 2 views
4

Ich rufe PageMethod "SameMethod" von Javascript-Methode "Aufrufer", so dass ich einige Werte aus der DB bekommen kann. Nachdem ich Werte erhalten habe, wird die Kontrolle in der "onSuccess" -Methode fortgesetzt. Problem ist, dass ich einige Variablenwerte ("wichtigWert") von Javascript-Methode "Anrufer" in "onSuccess" -Methode verwenden muss.Wie können wir mehrere Parameter an die onSuccess-Methode von PageMethod übergeben?

 
function caller(){ 
    var importantValue = 1984; 
    PageMethod.SomeMethod(param1,..., onSuccess, onFailure) 
} 

onSuccess Methode sollte wie folgt sein:

 
function onSuccess(pageMethodReturnValue, importantValue){ 

} 

Ist es möglich, und, wenn ja, wie mehrere Parameter übergeben werden (neben Rückgabewerte von Seite-Methode) auf „onSuccess“ Methode der PageMethod?

Vielen Dank für Hilfe

Antwort

11

Fahren Sie mit importantValue als zusätzlicher Parameter, wenn die Pagemethod aufrufen. (Dies ist in der Regel der Kontext-Parameter aufgerufen, wenn Sie online für weitere Informationen suchen)

function caller(){ 
    var importantValue = 1984; 
    PageMethod.SomeMethod(param1,..., onSuccess, onFailure, importantValue) 
} 

Dann Sie den Wert in dem onSuccess Rückruf zugreifen können wie folgt:

function onSuccess(pageMethodReturnValue, context, methodName){ 
    // context == 1984 
} 

aktualisieren OnSuccess-Parameter für @JacksonLopes zu erklären Es gibt eine gute Beschreibung auf der aspalliance website in an article by Suresh Kumar Goudampally

Das wichtige Bit (modifizierte meine Parameternamen zu verwenden) ist:

Der Erfolg Rückruf-Methode hat drei Parameter:

  • pageMethodReturnValue - Liefert die Ausgabe der Seite Methode.
  • Kontext - Dies wird verwendet, um unterschiedliche Logik zu behandeln, wenn Single Callback für mehrere Seiten Methode Anforderungen verwendet wird. Wir können auch ein Array von Werten als context Parameter übergeben.
  • methodName - Dieser Parameter gibt den Namen der aufgerufenen Seitenmethode zurück.
+0

Dank verwenden. Das ist es :) – Janko

+0

@Janko - kein Problem –

+0

Könntest du bitte aufwendiger sein ??? Ich meine, was ist der Parameter MethodName in OnSuccess ????? –

3

Sie könnten eine anonyme Funktion

PageMethod.SomeMethod(param1,..., function(){onSuccess(foo, importantValue)}, onFailure) 
Verwandte Themen