我在视图中显示了一个igGrid,每行都启用了编辑和删除功能。
我想根据记录显示"编辑"one_answers"删除"按钮。根据列数据,某些行将同时具有"编辑"one_answers"删除"按钮,而其他行只能具有"编辑或删除"按钮。我想在渲染网格时控制这些按钮,这样用户就不会看到任何不适用的按钮。
请指导我如何在igGrid中实现这一功能,以及我应该调用什么事件?
实际上有几种方法可以做到这一点,但我认为最简单的方法是使用条件模板(行或特定列)。使用这些,您可以评估其他列的值,并基于该渲染按钮。我从列模板示例开始,添加了另一列进行编辑:
$("#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}}"
}
//...
]
});
jS投标:http://jsfiddle.net/damyanpetev/dVLrA/
如果该模板的唯一用途是作为启用按钮的标志,则可以在实际评估的列上使用该模板。如果您想要更大的灵活性,或者使用多个顺序条件将两个按钮放在一列中,可以使用jsRender,如下所示:http://jsfiddle.net/damyanpetev/85ZGS/
注意:如果模板需要计算不绑定到列的值,请将"localSchemaTransform"设置为false。
供进一步阅读的文档链接:
- 因为我不知道你会用编辑按钮做什么-这里网格更新功能的链接
- 基础设施模板发动机
- jsRender集成(igGrid)