我有一个示例代码如下:
PageMethods.getServerTime(DateTimeFormat, OnRequestComplete, OnError);
它使用Javascript PageMethods来调用C#函数getServerTime
。但是,我注意到如果我使用以下代码,我将能够查看“返回值”。
function OnRequestComplete(result) {
alert(result);
}
但是,如果我尝试使用以下代码:
var result = "";
result = PageMethods.getServerTime(DateTimeFormat, OnRequestComplete, OnError);
我将永远得不到任何东西。
根据我对互联网的理解和研究,结果似乎得出如下结论:
Because the ajax call is async. It does not wait for the ajax call to complete.
因此,是否意味着在整个世界中没有能够将“结果值”存储到 Javascript变量的工作?
我只能放alert()
或使用<div>
来显示结果。没有机会将它存储到Javascript变量中供以后使用?
答案 0 :(得分:0)
var result = "";
function OnRequestComplete(res) {
result = res;
DoSomethingWithResult();
}
function DoSomethingWithResult(){
// Do your stuff here
}