zoukankan      html  css  js  c++  java
  • .net 3.5中ajax调用webservice中方法 总结

    今天看了webCast的一个 张义先老师的VS2008新特性之AJAX介绍视屏,中间讲到“ajax调用webservice中的方法”,当时张老师没有将这个Demo做出来,看完之后摸索了好久才搞明白是怎么回事,现在将经验分享给大家,希望对各位.net学习者有所帮助。

    目的:在前台就用AJAX调用WebService中的方法

    代码如下:

    WEBSERVICE代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Services;
    using System.Web.Script.Services;

    /// <summary>
    ///HelloService 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ScriptService]
    //若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
    // [System.Web.Script.Services.ScriptService]
    public class HelloService : System.Web.Services.WebService {

        public HelloService () {

            //如果使用设计的组件,请取消注释以下行
            //InitializeComponent();
        }

        [WebMethod]
        [ScriptMethod]
        public string HelloWorld() {
            return "abcdefg";
        }
    }

    aspx代码:

    <form id="form1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1" runat="server">
            <Services>
            <asp:ServiceReference Path="~/HelloService.asmx" />
            </Services>
            </asp:ScriptManager>
            <input id="Button1" type="button" value="button" onclick="return Button1_onclick()" />
        </div>
        </form>

        <script language="javascript" type="text/javascript">

            function Button1_onclick() {
               HelloService.HelloWorld(onGetSuccess);
            }

            //正是在上面张老师犯错了。在webservice中可以看到,HelloWorld方法并没有参数,此处的参数为,当调用服务器事件成功后执行的函数

           //正是由于HelloWorld方法返回的是一个字符串的值,所以此方法有STR参数保存返回的值。
            function onGetSuccess(str) {
            alert(str);
            }

        </script>

    --------- THE END --------------------

    ---------HFUTWYY原作----------------

  • 相关阅读:
    今天终于把IBM的rose2007破解版 弄好了
    Oracle_Statspack性能诊断工具
    ORACLE配置STATSPACK步骤
    为什么需要Analyze表
    四种数据ETL模式
    ETL数据抽取策略
    excel中宏与VBA的关系
    RMAN基础知识(二)
    常见Web技术之间的关系,你了解多少?
    RMAN 还原与恢复
  • 原文地址:https://www.cnblogs.com/hfutwyy/p/2122194.html
Copyright © 2011-2022 走看看