如何向PageMethod的onSuccess方法传递多个参数?

发布于 2024-10-06 15:55:00 字数 485 浏览 5 评论 0原文

我从 javascript 方法“调用者”调用 PageMethod“SameMethod”,以便我可以从数据库获取一些值。在我获得值后,控制将在“onSuccess”方法中继续。问题是我需要在“onSuccess”方法中使用来自javascript方法“caller”的一些变量值(“importantValue”)。

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

onSuccess 方法应该是这样的:

function onSuccess(pageMethodReturnValue, importantValue ){

}

是否可以,如果可以,如何将多个参数(除了页面方法的返回值)传递给 PageMethod 的“onSuccess”方法?

感谢您的帮助

I'm calling PageMethod "SameMethod" from javascript method "caller" so that I can get some values from DB. After I get values, control is continuing in "onSuccess" method. Problem is that I need to use some variable values ("importantValue") from javascript method "caller" in "onSuccess" method.

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

onSuccess method should be something like this:

function onSuccess(pageMethodReturnValue, importantValue ){

}

Is it possible and, if it is, how to pass multiple parameters (besides return values of page method) to "onSuccess" method of PageMethod?

Thanks for help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深府石板幽径 2024-10-13 15:55:00

调用 PageMethod 时将您的 importantValue 作为附加参数传递。 (如果您在线搜索更多信息,这通常称为上下文参数)

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

然后您可以按如下方式访问 onSuccess 回调中的值:

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

更新以解释 @JacksonLopes 的 onSuccess 参数
aspalliance 网站上 Suresh Kumar Goudampally 的一篇文章中有很好的描述

重要的一点(修改为使用我的参数名称)是:

成功回调方法有三个参数:

  • pageMethodReturnValue - 返回页面方法的输出。
  • 上下文 - 当单个回调用于多个页面方法请求时,这用于处理不同的逻辑。我们还可以通过
    作为 context 参数的值数组。
  • methodName - 此参数返回调用的页面方法的名称。

Pass your importantValue as an additional parameter when calling the PageMethod. (this is usually called the context parameter if you are searching online for more info)

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

Then you can access the value in the onSuccess callback as follows:

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

Update to explain onSuccess parameters for @JacksonLopes
There is a good description on the aspalliance website in an article by Suresh Kumar Goudampally

The important bit (modified to use my parameter names) is:

The success call back method has three parameters:

  • pageMethodReturnValue - Returns the output of the page method.
  • context - This is used to handle different logic when single callback is used for multiple page method requests. We can also pass
    an array of values as the context parameter.
  • methodName - This parameter returns the name of page method called.
时光礼记 2024-10-13 15:55:00

您可以使用匿名函数

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

You could use an anonymous function

PageMethod.SomeMethod(param1,..., function(){onSuccess(foo, importantValue)}, onFailure)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文