2011-11-05 225 views
0

我打電話從客戶端這樣一個特定的WebMethod:調用服務器端的方法從客戶端在asp.net

function openSmallPopup(int) { 
     PageMethods.GetTenantInfo(int, OnGetMessageSuccess, OnGetMessageFailure); 
     return 'I need here to return the result'; 
    } 

    function OnGetMessageSuccess(result, userContext, methodName) { 
     alert(result); 
    } 

好了,結果成功地顯示在OnGetMessageSuccess。唯一的問題是,我真的需要在最初的openSmallPopup方法中返回結果...你們知道有什麼方法可以做到這一點嗎?

+0

只需從OnGetMessageSuccess調用openSmallPopup(result)即可。 – Anoop

回答

1

爲什麼你想那樣?如果你真的想這樣做,那麼必須使用結果參數從OnGetMessageSuccess調用初始函數,並修改初始函數的簽名。

function openSmallPopup(int,result) { 
    if(arguments.length === 1){ 
    PageMethods.GetTenantInfo(int, OnGetMessageSuccess, OnGetMessageFailure); 
    }else if (arguments.length === 2){ 
     //use result here 
    } 
    return 'I need here to return the result'; 
} 

function OnGetMessageSuccess(result, userContext, methodName) { 
    alert(result); 
    openSmallPopup(0,result); 
} 

但實際上我寧願將openSmallPopup中的代碼取出爲單獨的函數並在回調中調用它。

相關問題