ScriptManager 以及ScriptManagerProxy在母版中使用和Service属性的使用

本文详细介绍了在使用VS2008进行ASP.NET Web开发时,与VS2005相比存在的差异及解决方法,包括创建项目、使用母版页、ScriptManager的正确配置、调用Web服务的Ajax实现等关键知识点。
摘要由CSDN通过智能技术生成

VS2008中,有些是和VS2005有区别的:

  1. 1.       创建项目选择”ASP.NET Web Site” ,而不是“ASP.NET Web Application”,后者添加的WebService文件的后台代码不会放在App_Code中,导致前台脚本访问WebService中的方法的时候,会出现” WebService未定义的错误。
  2. 2.       VS2008中使用母版页的时候,要把ScriptManager 添加在表单里,且不能添加在ContentPlaceHolder中,这个是使用拖放控件常犯的错误。

<formid="form1"runat="server">

   <div>

          

           <asp:ScriptManagerID="ScriptManager1"runat="server">

                <Services>

                    <asp:ServiceReferencePath="~/WebService.asmx"/>

                </Services>

            </asp:ScriptManager>

          

        <asp:ContentPlaceHolderid="ContentPlaceHolder1"runat="server">

        </asp:ContentPlaceHolder>

    </div>

    </form>

添加内容页后,页面会自动生成

<asp:ContentID="Content1"ContentPlaceHolderID="head"Runat="Server">

</asp:Content>

<asp:ContentID="Content2"ContentPlaceHolderID="ContentPlaceHolder1"Runat="Server">

</asp:Content>

我们在内容页使用ajax时,要添加ScriptManagerProxy

<asp:ContentID="Content2"ContentPlaceHolderID="ContentPlaceHolder1"Runat="Server">

</asp:Content>

中。

ScriptManager 以及ScriptManagerProxy  Service属性的使用:

  1. <asp:ScriptManagerID="ScriptManager1"runat="server">

                <Services>

                    <asp:ServiceReferencePath="~/WebService.asmx"/>

                </Services>

            </asp:ScriptManager>

  1. 2.       WebService.asmx这里是创建的Web Service:

VS2005自动给我们生成了许多代码,当要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,就把下行的注释给取消了就行了。不用在添加命名空间的引用。

[System.Web.Script.Services.ScriptService]

  1. 3.       脚本调用WebService

 

    <scriptlanguage="javascript"type="text/javascript">

// <!CDATA[

 

function btnAdd_onclick() {

    requestSampleService = WebService.Add(

        document.getElementById("txtName").value,   //属性

        onRequestComplete    //回调结束

    );

    returnfalse;

}

 

function onRequestComplete(result)

{

    alert(result);

}

// ]]>

 

注:WebService是创建的WebService的类名,我们调用的是它的Add()方法,其中包含一个参数。

  1. 4.       浏览,OK

转载于:https://www.cnblogs.com/goto/archive/2012/09/27/2705165.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值