2011-08-03 101 views
0

在ASP.NET MVC 3應用程序中,我們有一堆數據需要在頁面上顯示,但因爲並非所有數據都將由用戶在每個頁面上使用視圖中,我們在頁面中添加了一堆空白div,當用戶點擊div上方的標題時,它會通過AJAX請求加載相應的數據。ASP.NET MVC單擊後禁用Ajax鏈接

實施例:

<h3>@Ajax.ActionLink("Contact Information", 
        "ContactInformation", 
        "Customer", 
        new { id = Model.Id}, 
        new AjaxOptions { UpdateTargetId = "ContactInformationContainer" })</h3> 
<div id="ContactInformationContainer"></div> 

與上述代碼的問題是,每個鏈接被點擊時,該數據被重新載入。我們如何做到這一點,以便點擊後鏈接或文本仍然可見,但隨後的點擊不會提交另一個AJAX請求。

感謝

回答

0

您需要的JavaScript處理程序添加到AjaxOptions事件OnBeginOnComplete。在加載標籤時設置一個標誌(,例如OnComplete)或保持加載的鏈接列表。你只需要一些東西來維護當前頁面的鏈接狀態。在加載鏈接之前,如果鏈接先前已加載,則在OnBegin中返回false。

+1

任何關於只檢查目標div是否有HTML加載的想法,如果它確實,什麼都不做? –

+0

尼克 - 這將是管理狀態的另一種方式,假設它適用於預期的用途。有時載入AJAX的內容可能會替換現有的DOM內容(佔位符文本等),因此可能無法正常工作。 – SliverNinja