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

时间:2011-11-05 15:17:05

标签: javascript asp.net

我从客户端调用特定的WebMethod,如下所示:

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方法中返回结果......你们知道有什么办法吗?

1 个答案:

答案 0 :(得分: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中取出代码到单独的函数中并在回调中调用它。