2012-01-30 52 views
4

我有一個Jquery對話框,我加載一個包含webgrid的視圖。它通常打開並在webgrid中顯示內容。但是當我點擊分頁鏈接時,webgrid的下一頁在對話框中並沒有打開,而是作爲瀏覽器中的不同頁面。MVC3 Webgrid分頁不工作在一個JQuery對話框內

我不能在Jquery對話框中有一個webgrid嗎?

如果可以,我必須設置特定屬性嗎?

回答

12

您需要定義ajaxUpdateCallback功能,例如:

var grid = new WebGrid(source: Model, 
    ajaxUpdateCallback: "GridUpdate", 
    ajaxUpdateContainerId: "grid" 
    rowsPerPage: 50); 

確保.GetHtml方法有:

@grid.GetHtml(
    htmlAttributes: new { id = "grid" }, 
//.. rest of the options here 
) 

,並添加以下到您的主視圖

<script type="text/javascript"> 
    function GridUpdate(data) { 
     $('#grid').html(data); 
    } 
</script> 

花5分鐘時間查看您的WebGrid代碼,它將對您有很大幫助,並且可以節省以後的時間。它是什麼,是一個用jQuery代碼增強的HTML表格。查看頁面鏈接和標題(用於排序),它們都只是帶有Url的$ .load()調用和Callback參數。所以重要的是找出正確的div ID和回調函數:)

+0

我做了完全如圖所示,但我的網格不通過ajax更新。它發送完整的請求。還有什麼我需要做的嗎? – 2015-02-23 08:13:50