Jquery 如何有条件地隐藏或显示剑道网格中的列

Jquery 如何有条件地隐藏或显示剑道网格中的列,jquery,kendo-ui,kendo-grid,Jquery,Kendo Ui,Kendo Grid,如果我们必须在剑道网格中隐藏一列,我们通常会这样写 { field: "Name", hidden: true }, 但我想在隐藏中使用条件。正确或错误将来自另一个领域的数据库,即隐藏。如果我可以设置此选项,是否有任何选项 { field: "Name", hidden: HideShow}, 从数据库获取记录时将设置HideShow=true/false 我也尝试过用jquery隐藏和显示,但它在显示时扭曲了网格布局。隐藏操作正常。您可以在编辑:onGridEditing上执行该操作。

如果我们必须在剑道网格中隐藏一列,我们通常会这样写

 { field: "Name", hidden: true },
但我想在隐藏中使用条件。正确或错误将来自另一个领域的数据库,即隐藏。如果我可以设置此选项,是否有任何选项

 { field: "Name", hidden: HideShow},
从数据库获取记录时将设置HideShow=true/false


我也尝试过用jquery隐藏和显示,但它在显示时扭曲了网格布局。隐藏操作正常。

您可以在
编辑:onGridEditing
上执行该操作。以下是功能:

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

希望这能对您有所帮助。

为网格定义一个数据绑定事件,然后决定隐藏列。以下是一个示例:

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