2014-12-02 37 views
0

有沒有人將Kendo UI Grid加載到隱藏的div中(例如display:none;)?將Kendo UI網格加載到隱藏的div中?

我有問題想要自己做,最後是空網格。 div重新顯示在屏幕上後重新構建網格可解決此問題。想知道如何在後臺加載。

使用HTML5/JS框架。

回答

1

不知道你有什麼樣的問題,但是如果你按照下面的方式做,似乎並不是問題。

// initialize the grid as you are doing 
$("#grid").kendoGrid({ 
    ... 
}); 

// Show the grid 
var grid = $("#grid").data("kendoGrid"); 
grid.wrapper.css("display", "block"); 

// Hiding the grid 
var grid = $("#grid").data("kendoGrid"); 
grid.wrapper.css("display", "none"); 

片段例如:

$(document).ready(function() { 
 
    
 
    $("#show").on("click", function() { 
 
    var grid = $("#grid").data("kendoGrid"); 
 
    grid.wrapper.css("display", "block"); 
 
    }); 
 
    
 
    
 
    $("#hide").on("click", function() { 
 
    var grid = $("#grid").data("kendoGrid"); 
 
    grid.wrapper.css("display", "none"); 
 
    }); 
 
    
 
    
 
    $("#grid").kendoGrid({ 
 
    dataSource: { 
 
     type: "odata", 
 
     transport: { 
 
     read: "http://demos.telerik.com/kendo-ui/service/Northwind.svc/Orders" 
 
     }, 
 
     schema: { 
 
     model: { 
 
      fields: { 
 
      OrderID: { type: "number" }, 
 
      Freight: { type: "number" }, 
 
      ShipName: { type: "string" }, 
 
      OrderDate: { type: "date" }, 
 
      ShipCity: { type: "string" } 
 
      } 
 
     } 
 
     }, 
 
     pageSize: 20, 
 
     serverPaging: true, 
 
     serverFiltering: true, 
 
     serverSorting: true 
 
    }, 
 
    pageable: true, 
 
    columns: [ 
 
     { 
 
     field:"OrderID", 
 
     filterable: false 
 
     }, 
 
     "Freight", 
 
     { 
 
     field: "OrderDate", 
 
     title: "Order Date", 
 
     format: "{0:MM/dd/yyyy}" 
 
     }, 
 
     { 
 
     field: "ShipName", 
 
     title: "Ship Name" 
 
     }, 
 
     { 
 
     field: "ShipCity", 
 
     title: "Ship City" 
 
     } 
 
    ] 
 
    }); 
 
});
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.3.1119/styles/kendo.common.min.css" /> 
 
<link rel="stylesheet" href="http://cdn.kendostatic.com/2014.3.1119/styles/kendo.default.min.css" /> 
 

 
<script src="http://cdn.kendostatic.com/2014.3.1119/js/jquery.min.js"></script> 
 
<script src="http://cdn.kendostatic.com/2014.3.1119/js/kendo.all.min.js"></script> 
 

 
<button class="k-button" id="show">Show</button> 
 
<button class="k-button" id="hide">Hide</button> 
 
<div id="grid" style="display: none"></div>

+0

我仍然不知道發生了什麼事情。我試圖在沙盒中進行再生,並使其在小提琴中工作 - http://jsfiddle.net/Zacc206/ab4xbcjk/。當我嘗試在我的解決方案中這樣做時,我得到一個沒有任何數據的網格。真奇怪。我會研究JS,看看有沒有其他事情發生,並分享我發現的東西。 – 2014-12-03 16:56:30