2016-07-01 4 views
0

Normalerweise schreiben wir das, wenn wir eine Spalte im Kendo-Gitter verstecken müssen.Wie man die Spalten im Kendo-Gitter bedingt ein- oder ausblendet

aber ich möchte Bedingung in der versteckten verwenden. Das Wahr oder Falsch würde von der Datenbank in einem anderen Feld kommen, d. H. HideShow. Gibt es eine Option, wenn ich das einstellen kann?

{ field: "Name", hidden: HideShow}, 

HideShow = true/false wird beim Abrufen von Datensätzen aus der Datenbank festgelegt.

Ich habe versucht, verstecken und durch jQuery auch zeigen, aber es verzerrt das Raster-Layout beim Anzeigen. Hide funktioniert gut.

Antwort

0

Sie können es auf Edit: onGridEditing durchführen. Folgendes ist Funktion:

function onGridEditing(arg) { 
     if (true) { 
      $('label[for=Name]').hide(); 
      $('div[data-for=DesignationID]').hide(); 
     } 
     else { 
      $('label[for=Name]').show(); 
      $('div[data-for=DesignationID]').hide(); 
     } 
} 

Hoffe, das wird Ihnen helfen.

1

Definieren Sie ein DataBound-Ereignis für Ihr Raster und entscheiden Sie, die Spalten auszublenden. Unten ist ein Beispiel:

<script> 
var grid = $("#myGrid").data("kendoGrid"); 
grid.bind("dataBound", grid_dataBound); 
<script> 
function grid_dataBound() { 
    if (MustBeHide) 
     this.hideColumn("Name"); 
} 
</script> 

Dies wird Spalte "Name" verbergen.

Sie können auch die Spalte für Spalte Index verbergen, wie folgt aus:

function grid_dataBound() { 
    if (MustBeHide) 
     this.hideColumn(1); 
} 
Verwandte Themen