(2009-08-21 09:25:33)
想要異步的時候異步,想要同步的時候同步,在不同的情況下我們有不同的需求。dwr是ajax的服務器端框架,它封裝了服務器端的調用,我們可以在JAVASCRIPT中直接調用服務器端的代碼,完成想要的功能。但是,由於AJAX是異步實現的,並且AJAX確實是爲了異步的實現才引入近來的。但是,AJAX仍然也支持同步的調用。在純粹的XMLHttpRequest中可以設置調用是否是異步的。XMLHttpRequest的open函數是有一個是否同步參數,如下:
XMLHttpRequest.open(String method, String URL, boolean asynchronous)
其中的asynchronous就是是否同步的參數了。
在DWR的engine.js文件,有setAsync方法,就是設置調用是否是同步的,還是異步的。
js 代碼
上面這段代碼就是設置DWR是同步返回的。如果不同步返回的話,我去頁面中的一個元素的值就取不到了,因此必須先設置爲同步。然後再執行三個異步調用:
js 代碼
1.viewUtil.getAllModuleLablueBeanBy
2.viewUtil.getAllResolverListLablue