在一般的asp.net網站
要如何讓網頁在不postback的情況中改變顯示資料呢?
答案就是使用Ajax
這邊記錄最簡單的Ajax的使用方法
內容是"按下去Button後,去後端抓資料來顯示在Lebel中,但是不會Postback"
第一步:加入ajax.dll 參考
第二步:在網頁後端.cs 的Page_Load中加入這行
Ajax.Utility.RegisterTypeForAjax(
typeof
(your
class
name));
ps : (your
class
name)-> 換成你的頁面名稱 ex: testPage.aspx的話就寫 testPage
第三步:透過[Ajax.AjaxMethod()]建立方法,舉例如下
[Ajax.AjaxMethod()]
public String returnString()
{
String str = "test";
return str;
}
第四步:設定IIS7
請在<system.webServer> </system.webServer> 之間貼上以下程式碼
1 |
< handlers > |
2 |
< add name = "ajax" verb = "POST,GET" path = "ajax/*.ashx" type = "Ajax.PageHandlerFactory, Ajax" /> |
3 |
</handlers |
第五步:在head中寫script
<script type="text/javascript">
function doAjax() {
var s = testPage.returnString().value;
var lb = document.getElementById('lbtest');
lb.innerHTML = s;
}
</script>
ps:一樣的testPage是網頁名稱,lbtest是在前端放好要顯示的lable
第六步:前端顯示的物件
<label id="lbtest" runat="server"></label>
<input type="button" runat="server" id="btntest" onclick="doAjax();" value="Test" />
Done~~~