Asp.net AJAX調用后台靜態方法總結


從客戶端調用后台靜態方法

1.Ajax Library方式

C#代碼:

[WebMethod]
public static DateTime GetCurrentTime(string str)
{
    return DateTime.Now;
}

JS代碼:

    <form id="form1" runat="server">
    <script language=javascript type="text/javascript">
        function GetCurrentTime1() {
            PageMethods.GetCurrentTime('NewEgg ajax training', CheckIsSuccess);
        }
        function CheckIsSuccess(result) {
            alert(result);
        }
     </script>
    <div>
        <asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
        </asp:ScriptManager>
        <input id="Button1" type="button" value="客戶端控件調用服務器端的方法" onclick="GetCurrentTime1()" />
    </div>
    </form>

說明:

C#方法必須加 "[WebMethod]"

前台頁面必須使用引用 服務器控件

<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePageMethods="true">
</asp:ScriptManager>

調用方法: PageMethods.后台方法名(參數[,參數....], 成功后調用的方法名);

Ajax Library

image

image

2. jQuery方式

C#代碼:

[WebMethod]
public static string ABC(string ABC)
{
    return ABC;
}

JS代碼:

	$().ready(
            function() {
                $("#AjaxDemo").click(function() {
                    $.ajax({
                        type: "POST",
                        url: "Default.aspx/ABC",
                        data: "{'ABC':'test'}",
                        contentType: "application/json; charset=utf-8",
                        success: function(msg) {alert(msg); }
                    })
                })
            }
        )

說明: 必須引用jQuery庫文件.

3. 還有一種好像是要引用AJAX.dll文件的. 在后台注冊前台方法. 這個好像在.net2.0的時候用的比較多. 具體沒仔細研究.

還望有其他更簡單方法的同學互相交流下~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM