MVC3 Webgrid Paging在Jquery对话框中不起作用

Jay*_*nga 4 jquery-ui asp.net-mvc-3

我有一个Jquery对话框,我加载了一个包含webgrid的视图.它正常打开并在webgrid中显示内容.但是,当我单击分页链接时,webgrid的下一页不会在对话框中打开,而是作为浏览器中的其他页面打开.

我不能在Jquery对话框中有一个webgrid吗?

如果可以,我是否必须设置特定属性?

tor*_*orm 12

您需要定义ajaxUpdateCallback函数,例如:

 var grid = new WebGrid(source: Model,
    ajaxUpdateCallback: "GridUpdate",
    ajaxUpdateContainerId: "grid"
    rowsPerPage: 50); 
Run Code Online (Sandbox Code Playgroud)

确保您的.GetHtml方法具有:

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

并将以下内容添加到主视图中

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

花5分钟来查看您的WebGrid代码,它将为您提供很多帮助,并在将来节省时间.它是什么,是一个用jQuery代码增强的HTML表.查看页面链接和标题(用于排序)它们都只是带有Url的$ .load()调用和Callback参数.所以重要的是弄清楚正确的div id和回调函数:)