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


    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
  • 相关阅读:
    第四周JSP作业
    jsp第二次作业
    3.4软件管理与测试作业
    jsp3月3日作业
    课后listview作业
    安卓sql
    activity带数据跳转
    answers
    阿里云ESC无法使用python发送邮件的问题
    Ubuntu 更改时区
  • 原文地址:https://www.cnblogs.com/goto/p/2705165.html
Copyright © 2020-2023  润新知