calling a public function of an asp.net ajax server control from client side

前端 未结 1 1052
别跟我提以往
别跟我提以往 2020-12-21 20:04

I want to make a ajax server control in ASP.NET and in that application I have a textbox and I want to send text of that textbox to function that is created in ASP.NET ajax

相关标签:
1条回答
  • 2020-12-21 20:52
    1. Add a Script Manager to the page
    2. Add a new web service file to the project
    3. Add the attribute [ScriptService] to the service class
    4. Create a method that accepts and returns a string ie:
    5. Add the attribute [ScriptMethod] to the method
    6. On the aspx page with the script manager, add a Service reference to the asmx file
    7. Call the server side method in javascript qualifying it with the full namespace.

    MyPage.aspx:

    ...
    <asp:ScriptManager ID="ScriptManager1" runat="server">
        <Services>
            <asp:ServiceReference Path="~/MyService.asmx" />
        </Services>
    </asp:ScriptManager>
    ...
    <script>
        MyNameSpace.MyService.MyMethod('some text', responseHandlerMethod, errorHandlerMethod);
    </script>
    ...
    

    MyService.asmx

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Services;
    using System.Web.Script.Services;
    
    namespace MyNameSpace
    {
        [WebService(Namespace = "http://tempuri.org/")]
        [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
        [System.ComponentModel.ToolboxItem(false)]
        [ScriptService]
        public class MyServiceClass: System.Web.Services.WebService
        {
            [ScriptMethod]
            [WebMethod]
            public string MyMethod(string SomeText)
            {
                return "Hi mom! " + SomeText;
            }
        }
    }
    
    0 讨论(0)
提交回复
热议问题