ajax 前台js調用後台方法

來源:互聯網
上載者:User

1.先把Ajax.dll添加引用到項目中,在項目上右擊,菜單上有個[添加引用],然後一步一步把那個.DLL檔案添加進來,之後你會在項目的引用中看到那個Ajax.dll就是添加成功了
2.修改Web.config。在 <system.web> 元素中添加以下代碼。這裡的Ajax.dll和Ajaxpro.dll引用方法是不一樣的,一定要注意
<configuration>
<system.web>
<httpHandlers>
<!-- Ajax.dll的設定檔寫法為,我下載到的是這個 -->
<add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" />
<!-- AjaxPro.dll的設定檔寫法為,根據你下載到的DLL檔案選擇不同的配置語句-->
<add verb="*" path="ajaxpro/*.ashx" type="AjaxPro.AjaxHandlerFactory, AjaxPro"/>
</httpHandlers>
</system.web>
</configuration>

3對AjaxPro用到的頁Page_Load事件中進行運行時註冊。如:
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(_Default));//是Ajax.dll的
AjaxPro.Utility.RegisterTypeForAjax(typeof(_Default));//Ajaxpro.dll的
}
//這的_Default是指頁面類的類名,就是這個頁面的名字。如是放在命名空間,則需要寫上完整的命名空間(如:namespaces._Default)

4建立伺服器端方法
[Ajax.AjaxMethod]//這句一定要有,如果你是Ajaxpro.dll就寫成[AjaxPro.AjaxMethod]
public string getValue(int a,int b)
{
//該方法我們將實現從用戶端傳入兩個數,在伺服器端相加計算後返回到用戶端。這裡可以寫在原來的頁後台中也可以單獨寫一個類。
return Convert.ToString(a+b);//這裡返回的就是前台得到的值,反正參數已經進CS檔案了,想怎麼操作就怎麼操作,包括讀庫都可以。
}
5 用戶端調用。
<%@ Page language="c#" Codebehind="WebPage1.aspx.cs" AutoEventWireup="false" Inherits="Web.WebPage1" %>
<script language="javascript">
function getValue()
{

//這裡如果是AjaxPro.dll就加Web._Default.getValue,如果是Ajax.dll就不用加命名空間如下
_Default.getValue(1,2,getGroups_callback);//該處即調用伺服器端的_Default.getValue方法。
//_Default就是寫getValue的那個類,如果寫在本頁CS裡就是WebPage1.getValue,1和2是參數。
//這在裡邊getGroups_callback指定的是個回呼函數,以接受伺服器端處理完後返回用戶端結果。
}

//這個方法使用者接受並處理伺服器端返回的結果。
function getGroups_callback(response)
{
var dt=response.value;//這個值就是最終傳回來的值,想怎麼用就怎麼用,反正回前台了。
document.getElementById("Div_1").innerHTML=dt;
}
</script>
<body>
<div id="Div_1"> </div>
<button onclick=getValue()>開始 </botton>
</body>

原文來自:http://www.cnblogs.com/yugen/archive/2010/08/03/1791563.html

 

本文來自CSDN部落格,轉載請標明出處:http://blog.csdn.net/li_shengwangso/archive/2011/04/19/6334234.aspx

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.