根据每行的条件显示iggrid上的按钮

时间:2014-02-06 20:52:26

标签: infragistics ignite-ui iggrid

我在我的视图中显示了一个igGrid,每行都启用了编辑和删除功能。

我想根据记录显示编辑和删除按钮。根据列数据,某些行将同时具有“编辑”和“删除”按钮,而其他行只能具有“编辑”或“删除”按钮。我希望在渲染网格时控制这些按钮,这样用户就不会看到任何不适用的按钮。

请指导我如何在igGrid中实现此功能以及我应该调用哪个事件?

1 个答案:

答案 0 :(得分:3)

实际上有一些方法可以做到这一点,但我认为最简单的方法是使用Conditional Templates(行或特定列)。使用它们可以评估其他列的值并基于该渲染按钮。我从column template sample开始,并为编辑添加了另一列:

$("#grid").igGrid({
    //...
    columns : [
        {
            headerText : "",
            key : "Delete",
            dataType : "string",
            width : "10%",
            unbound : true,
            template : "{{if ${MakeFlag} }}<input type='button' onclick='deleteRow(${ProductID})' value='Delete' class='delete-button'/>{{/if}}"
        }
        //...
    ]
});

jSFiddle:http://jsfiddle.net/damyanpetev/dVLrA/

如果您评估的唯一目的是启用按钮的标志,则可以在您评估的实际列上使用此模板。如果您想要更多灵活性或使用多个连续条件将两个按钮放在一列中,您可以使用jsRender,如下所示:http://jsfiddle.net/damyanpetev/85ZGS/

注意:如果模板需要评估不会绑定到列的值,请将“localSchemaTransform”设置为false。

文档链接供进一步阅读: