【问题标题】:Calling Webservices in a loop won't execute the custom OnSuccess function循环调用 Webservices 不会执行自定义 OnSuccess 函数
【发布时间】:2008-11-02 07:49:32
【问题描述】:

我有问题。 我正在使用 VS2008 进行编码。 我正在从我的 JavaScript 页面调用 web 服务。 一个例子

Services.ChangeDropDownLists.GetNowPlayingMoviesByLocationSVC(
    blah, 
    OnSuccessMoviesByRegion, 
    OnError, 
    OnTimeOut
);

执行后,转到函数OnSuccessMoviesByRegion

但是如果我将服务放在一个循环中(一个简单的 for 循环)

Services.ChangeDropDownLists.GetNowPlayingMoviesByLocationSVC(
    blah[i], 
    OnSuccessMoviesByRegion, 
    OnError, 
    OnTimeOut
);

OnSucessMoviesByRegion函数不会执行(但服务调用执行n次成功 但我必须有函数,因为我通过它返回值。

我错过了什么? 这是典型的行为吗? 有其他选择吗?

【问题讨论】:

    标签: asp.net javascript jquery web-services


    【解决方案1】:

    Naveen,我在这里回复你的follow-up question。我可以想到两个选择:

    1. 尝试一次调用打包您的数据(发送整个 blah 数组并在服务器上处理)。

    2. 使用您每次在“OnSucces”客户端处理程序中递减的计数器变量,并在此计数器变量达到 0 时停止。

    【讨论】:

      【解决方案2】:

      我猜有某种并发问题。可能您在最后一个请求完成之前触发了下一个请求。

      我认为你必须重写循环。尝试移动该代码,只调用第一个请求,然后每次使用“OnSuccess”函数调用下一个。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-10
        • 2019-08-08
        • 1970-01-01
        • 2020-02-13
        • 1970-01-01
        • 2011-07-30
        相关资源
        最近更新 更多