调用服务器端的方法从客户端在asp.net

问题描述:

我打电话从客户端这样一个特定的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

为什么你想那样?如果你真的想这样做,那么必须使用结果参数从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中的代码取出为单独的函数并在回调中调用它。