科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件ASP.NET AJAX中的异步Web Services调用

ASP.NET AJAX中的异步Web Services调用

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在ASP.NET AJAX当中,除了通过UpdatePanel机制来建立具有AJAX功能的Web应用程序外,其实传统(较为典型)的做法是利用……

作者:dotnetWalker 来源:CSDN 2007年11月20日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
接着,我们在页面上Double-Click以编写Page_Load事件:

ASP.NET AJAX中的异步Web Services调用

  请注意在上方程式的最后一行(16行),我们通过Services属性,将刚才建立的ws.asmx加入,加上之后,ScriptManager会帮我们在页面上自动产生JavaScript代码,可帮助我们得以利用底下这样的JavaScript写法,来调用后端Web Services:

  WS.GetServerTime(参数,成功调用WebServices后要运行的javaScript函数,调用WebServices若失败后要运行的javaScript函数);

  因为有这样的设置,所以你会看到,我们在上面代码的第5行很大方的通过这样的方式来调用Web Services:

以下是引用片段:
  WS.GetServerTime('yyyy/MM/dd HH:mm:ss',onOK);

  如果没有经过上面第16行的设置,则上面这段调用Web Services的JavaScript代码会完全无效,因为JavaScript根本没有所谓的WS对象,也没有GetServerTime方法可供调用,但是一但通过上面代码第16行的设置,则前端网页即可通过JavaScript“WS.GetServerTime(…)”这样的方式调用Web Services。

  而调用“WS.GetServerTime('yyyy/MM/dd HH:mm:ss',onOK);”时传入的“onOK”,则是指定成功调用Web Services后,前端浏览器上的JavaScript代码要用来接收服务器端WS.asmx运行后的回传值的函数。

  我们在上面第7-9行定义了这段JavaScript的代码,接着来看这个函数的内容:

以下是引用片段:
  function onOK(returnData){
  $get('TextBox1').value=returnData;
  }

  代码很简单,具有一个ReturnData参数,这个参数就是调用WS. GetServerTime这个Web Services后,该Web Services会传回来的服务器端时间。接着取得时间之后,第二行的$get(‘TextBox’)又是什么呢?

  其实,“$get(‘TextBox’)”完全等同于“document.getElementById("TextBox");”,拜 ScriptManager之赐,我们得以用简化后的程序写法来编写JavaScript,这部分当然也是ASP.NET AJAX Client-Script所提供的功能。

  最后,我们试着运行这个网页,果然,我们单击Html Button时,前端浏览器上的JavaScript通过调用后端的Web Services(WS.asmx),取得了以“yyyy/MM/dd HH:mm:ss”为格式的服务器端时间,并且更新到页面的TextBox控件中,不需要UpdatePanel,我们依旧可以完成整个异步调用 Web Services的动作。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章