這樣就可以在vs2008中選擇AJAX模板
但是必須修改web.config的設定 指定特定的組件版本
最簡單的方法是新建一個AJAX 頁面 然後復制web.config內容跟舊頁面對比 沒有的添加上 有的覆蓋掉。
加入以下設定
復制代碼 代碼如下:
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
</pages>
接下來加入
復制代碼 代碼如下:
<compilation debug="true" strict="false" explicit="true">
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Extensions.Design, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</assemblies>
</compilation>
新建一個頁面,復制以下代碼:
復制代碼 代碼如下:
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<label runat="server" id="lableTime">
</label>
<% =DateTime.Now.ToString()%>
<asp:Button ID="Button3" runat="server" Text="更新" OnClick="Button2_Click" />
<asp:Timer ID="Timer1" runat="server" Interval="1000">
</asp:Timer>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
<br />
<% =DateTime.Now.ToString()%>
<asp:Button ID="Button2" runat="server" Text="更新" OnClick="Button2_Click" />
<asp:Button ID="Button1" runat="server" Text="更新" />
</div>
</form>
後台:
復制代碼 代碼如下:
protected void Button2_Click(object sender, EventArgs e)
{
lableTime.InnerText = DateTime.Now.ToString();
}
運行一下,成功實現無刷新。