问题描述
我用javascript调用webserverice方法。情景是这样的,一个页面上有四个下拉列表,修改第一个下拉列表后根据选项刷新第二个列表,然后通过第一、二个选项刷新第三个下拉列表,然后是第四个个。问题是由于是异步调用,我用javascript调用webmethod刷新第二个下拉列表后,并不知道什么时候刷新完毕,直接刷新第三个下拉列表不一定获得到第二个选项的内容。是要像下面这样把多个函数嵌套起来吗?有什么好方法吗?因为有更多的下拉列表关联,这样写不知道好不好。WebService.RefreshSecondCombox(firstvalue,function(result){WebService.RefreshSecondCombox(firstvalue,secondvalue,function(result){WebService.RefreshthirdCombox(firstvalue,secondvalue,thirdvalue,function(result){},onfialed},onfialed},OnFailed);
解决方案
解决方案二:
微软的ajax1.0有没有类似XMLHttpRequest.open(Stringmethod,StringURL,booleanasynchronous)设置asynchronous为可选项,表示请求是同步还是异步,异步请求为false,同步请求为true,默认情况下为同步true.这种参数设置?实现同步请求
解决方案三:
ajax1.0就是用的XMLHttpRequest吧
解决方案四:
哦,说错了,我用的是ajaxToolkit:ToolkitScriptManager。不用创建XMLHttpReques对象,直接调用就可以。webmethod(参数,OnResolveScriptReference,OnAsyncPostBackError)不知道使用这种调用方式是如何设置为同步调用?