微軟ASP.Net Ajax:使用AJAX直接調用後台頁面類方法

來源:互聯網
上載者:User

一直使用ajaxpro來做無重新整理,今天用了微軟的無重新整理架構,竟然發現很多人都通過web service來調用後台cs方法.網上搜尋一番,找到了直接調用頁面cs類的方法.

特此記錄,以備後用.

首先是使用VS.Net2005建立一個 ASP.Net AJAX-Enabled Web Application

 1、使用AJAX直接調用後台方法:

後台代碼:

namespace AJAX1
{
    public partial class _Default : System.Web.UI.Page
    {
        // 需要標識為WebMethod 
        [System.Web.Services.WebMethod]
        // 注意,要讓前台調用的方法,一定要是public和static的 
        public static string Hello(string name)
        {
            return "Hello:" + name;
        }
    }
}
 
前台代碼:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AJAX1._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>Untitled Page</title>
    <script type="text/javascript">
        function btnClick(){
            // 調用頁面後台方法,前面跟方法所需的參數,接著是方法回調成功時要執行的js函數,最後一個是方法回調失敗時要執行的js函數
            PageMethods.Hello("you",funReady,funError);
        }        
        // result 就是後台方法返回的資料
        function funReady(result){
            alert(result);
        }
        // err 就是後台方法返回的錯誤資訊
        function funError(err){
            alert("Error:" + err._message );
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        下面要加上EnablePageMethods="true"屬性,才能使用後台方法        
        <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
        </asp:ScriptManager>
        <input type="button" onclick="btnClick();" value="test" />
    </div>
    </form>
</body>
</html>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.