2017-06-26 16 views
0

剣道のjQueryグリッドでのグループ化を最大3列に制限する必要があります。 私はdataboundイベントを使用してこれを行う必要があり、grid.dataSource.group()を使用して配列から新しい列を削除する必要があることを知っています。おそらく、最も良い方法は、 '以前の'グループ分けを保存して、古い列と新しい列を比較して、新しい列である列を確認し、それを削除することです。剣道グリッド - 最大3列のグループ

答えて

1

あなたはこのようgroupイベントでグループ化を取り消すことができます。

<!DOCTYPE html> 
 
<html> 
 
<head> 
 
    <meta charset="utf-8"/> 
 
    <title>Kendo UI Snippet</title> 
 

 
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.2.621/styles/kendo.common.min.css"/> 
 
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.2.621/styles/kendo.rtl.min.css"/> 
 
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.2.621/styles/kendo.silver.min.css"/> 
 
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2017.2.621/styles/kendo.mobile.all.min.css"/> 
 

 
    <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script> 
 
    <script src="https://kendo.cdn.telerik.com/2017.2.621/js/kendo.all.min.js"></script> 
 
</head> 
 
<body> 
 
    
 
<div id="grid"></div> 
 
<script> 
 

 
    $("#grid").kendoGrid({ 
 
    columns: [ 
 
     { field: "name" }, 
 
     { field: "age" }, 
 
     { field: "test" } 
 
    ], 
 
    dataSource: { 
 
     data: [ 
 
     { id: 1, name: "Jane Doe", age: 30, test: 1 }, 
 
     { id: 2, name: "John Doe", age: 33, test: 2 } 
 
     ], 
 
     schema: { 
 
     model: { id: "id" } 
 
     } 
 
    }, 
 
    groupable: true, 
 
    group: function(e) { 
 
     if (e.groups.length > 2) { 
 
     e.preventDefault(); 
 
     console.log("Group prevented"); 
 
     } 
 
    } 
 
    }); 
 
</script> 
 
</body> 
 
</html>

+0

あなたのコードスニペットは動作しません。 – Sandman

+0

これはFirefox上で動作し、他のブラウザでも修正されます。ありがとう – Shai

+0

スニペットが動作しています – Shai

関連する問題