2015-08-21 106 views
0

是否有機會停止頁面刷新每個按下的control如何停止刷新頁面

例如:我更改DropDownList的選擇並刷新頁面。它感覺很奇怪。

我有一個表單標籤runat="server"

+1

轉'autopostback = false' – TFrost

+0

嘗試更新面板它會幫助你! – Padmanaban

+0

@TFrost它將停止他的代碼運行'SelectedIndexChanged' – Shaharyar

回答

1

嘗試使用UpdatePanel,在這裏你可以找到how to use the update Panel示例代碼做到這一點。

最簡單的方法來阻止refeshing

關於回傳: 回發是給提交ASP.NET頁面的服務器進行處理的過程的名稱。如果要根據某些來源(如使用數據庫驗證用戶名和密碼)檢查頁面的某些憑證,則會執行PostBack。這是客戶機無法完成的事情,因此這些細節必須「回傳」給服務器。

什麼是AutoPostBack物業在ASP.NET:

如果我們創建了一個網頁,它由被配置爲使用AutoPostBack一個或多個Web控件(每個Web控件都會有自己的AutoPostBack財產),ASP.NET會在呈現的HTML頁面中添加一個特殊的JavaScipt函數。該功能被命名爲_doPostBack()。當被調用時,它會觸發一個PostBack,將數據發送回Web服務器。

Understanding PostBack

嘗試把更新面板下拉與觸發器

<asp:UpdatePanel ID="upSetSession" runat="server"> 
     <ContentTemplate> 
      <asp:DropDownList ID="ddlMyList" runat="server" 
       onselectedindexchanged="ddlMyList_SelectedIndexChanged" 
       AutoPostBack="true"> 
       <asp:ListItem>Select One</asp:ListItem> 
       <asp:ListItem>Maybe</asp:ListItem> 
       <asp:ListItem>Yes</asp:ListItem> 
      </asp:DropDownList> 
     </ContentTemplate> 
     <Triggers> 
      <asp:AsyncPostBackTrigger ControlID="ddlMyList" 
       EventName="SelectedIndexChanged" /> 
     </Triggers> 
</asp:UpdatePanel> 
0

asp.net

也許ASP.NET AJAX Extensions的最顯着的特點是能力在不進行完整回發到服務器的情況下執行部分或增量頁面更新,而無需更改代碼s和最小的標記變化。優勢非常廣泛 - 您的多媒體狀態(如Adobe Flash或Windows Media)保持不變,帶寬成本降低,客戶端不會遇到通常與回發相關的閃爍。

將部分渲染集成到您的項目中。看看this的鏈接。

OnClientClick="return false;"可能會幫助,但在每個按鈕上添加OnClientClick="return false;",不是一個好主意。部分渲染和AJAX是更好的解決方案。