zoukankan      html  css  js  c++  java
  • JS调用Webservice简单例子

    首先创一个WEB项目,直接使用默认创建的那个aspx页面编码

    aspx页面:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>

        <script type="text/javascript">
            //下面2个方法实现了Ajax+WebService的无刷新 HandleStateChange为回调函数  执行完HelloWorld返回的值将赋给HandleStateChange的参数reusltText  这里有点难理解  习惯就好
            function getStr() {
                JSWebService.HelloWorld(HandleStateChange);
            }

            function HandleStateChange(reusltText) {
                $get("result").innerHTML = reusltText;
            }
     
        </script>

    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <input type="button" value="JS调用WebService" onclick="getStr()" />
            <asp:ScriptManager ID="ScriptManager1" runat="server">
                <Services>
                    <asp:ServiceReference Path="~/JSWebService.asmx" />
                </Services>
            </asp:ScriptManager>
            &nbsp;<div id="result">
            </div>
        </div>
        </form>
    </body>
    </html>

    接着创建webservice

    JSWebService.cs代码如下:

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

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

        public JSWebService () {

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

        [WebMethod]
        public string HelloWorld() {
            return "Hello World";
        }   
    }

     以上就是完整的代码。其中要注意的有以下几点:

    1、javascript中的2个方法的意思要懂,就是实现无刷新

    2、asp:ScriptManager的配置要懂,其中Path属性的值就是js要掉用的webservice类

    3、webservice类中[System.Web.Script.Services.ScriptService]的注释要取消,为了让JS能调用到该类

  • 相关阅读:
    高级特性(4)- 数据库编程
    UVA Jin Ge Jin Qu hao 12563
    UVA 116 Unidirectional TSP
    HDU 2224 The shortest path
    poj 2677 Tour
    【算法学习】双调欧几里得旅行商问题(动态规划)
    南洋理工大学 ACM 在线评测系统 矩形嵌套
    UVA The Tower of Babylon
    uva A Spy in the Metro(洛谷 P2583 地铁间谍)
    洛谷 P1095 守望者的逃离
  • 原文地址:https://www.cnblogs.com/tianguook/p/1839590.html
Copyright © 2011-2022 走看看