1

我正在尝试构建一个类似数据输入表单的向导,并且我在“第二页”上有一个网格,该网格是根据第一页上的值填充的。

前任:

第 1 页:公司下拉列表,选择 CompanyId

第 2 页:根据第 1 页中的 CompanyId 填充的网格

Page1 和 Page2 实际上是同一页面上的 2 个 div 标签。我试图弄清楚如何在我转到 Page2 或拥有有效的 CompanyId 之前不加载网格。

如何将 MVC Ajax 网格设置为 1。没有让网格在加载时执行 Select() Ajax 调用?2. 使用jquery让网格按需调用Select?

4

1 回答 1

5

尝试以下操作:

将此javascript添加到页面:

<script type="text/javascript">
var initialLoad = true;
function Grid_onDataBinding(e) {
    if (initialLoad) {
        e.preventDefault();
        initialLoad = false;
    }
}

function RefreshGrid() {
    var grid = $("#TestGrid").data("tGrid");  // Modify the grid ID to your own!!!
    grid.ajaxRequest();
}
</script>

注册以下客户端事件,以防止网格在初始加载时进行数据绑定。

.ClientEvents(events => events.OnDataBinding("Grid_onDataBinding"))

然后在页面某处调用 RefreshGrid() 函数,重新绑定网格。

<input type="button" value="Refresh Grid" onclick="RefreshGrid()" />

More can be found on the Telerik documentation site. http://www.telerik.com/help/aspnet-mvc/telerik-ui-components-grid-client-api-and-events.html

于 2012-05-24T15:48:17.523 回答